Форум программистов, компьютерный форум, киберфорум
Наши страницы
Программирование Android
Войти
Регистрация
Восстановить пароль
 
Рейтинг 5.00/4: Рейтинг темы: голосов - 4, средняя оценка - 5.00
Elias_smith
2 / 2 / 0
Регистрация: 27.09.2015
Сообщений: 50
1

SQLite падает после изменения кода

25.10.2017, 20:25. Просмотров 806. Ответов 2
Метки нет (Все метки)

Никак не могу разобраться с SQl. Помогите пожалуйста.
Делаю приложение по примерам из интернета. Создал отдельный класс и добавил пару своих переменных. Когда добавил одну переменную, то все нормально, когда вторую, то программа вылетает. Не пойму в чем дело?
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
public class ControlSQL extends SQLiteOpenHelper {
 
 
    private static final String DATABASE_NAME = "android.db";
    private static final int DATABASE_VERSION = 1;
    private static final String DATABASE_TABLE = "table1";
 
    // поля таблицы для хранения ФИО, Должности и Телефона (id формируется автоматически)
    public static final String COLUMN_ID = "_id";
    public static final String COLUMN_FIO = "FIO";
    public static final String COLUMN_TASK = "TASK";
    public static final String COLUMN_TASK2 = "TASK2";
    public static final String COLUMN_TEL = "TEL";
 
    public static final String COLUMN_BONUS2 = "BONUS"; // - именно с этой переменной у меня проблемы
  
    
    
    
    
 
    // формируем запрос для создания базы данных
    private static final String DATABASE_CREATE = "create table "
            + DATABASE_TABLE + "(" + COLUMN_ID
            + " integer primary key autoincrement, " + COLUMN_FIO
            + " text not null, " + COLUMN_TASK + " text not null,"
            + COLUMN_TEL + " text not null," + COLUMN_TASK2 + " text not null,"
            + COLUMN_BONUS2 + "text not null" + ");";
    
 
 
    public ControlSQL(Context context) {
        super(context, DATABASE_NAME, null, DATABASE_VERSION);
    }
 
    @Override
    public void onCreate(SQLiteDatabase db) {
 
        //создаем таблицу
        db.execSQL(DATABASE_CREATE);
 
        //добавляем строку
        ContentValues initialValues = createContentValues(0,0,0,0,0);
        db.insert(DATABASE_TABLE, null, initialValues);
 
 
    }
 
    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        db.execSQL("DROP TABLE IF EXISTS " + DATABASE_TABLE);
        onCreate(db);
    }
 
 
 
    /**
     * Создаёт новый контакт. Если создан успешно - возвращается
     * номер строки rowId, иначе -1
     */
    public long createNewTable(Integer fio_in, Integer task_in, Integer tel_in, Integer task2_in, Integer bonus2_in) {
        SQLiteDatabase db = this.getWritableDatabase();
        ContentValues initialValues = createContentValues(fio_in,task_in,tel_in,task2_in, bonus2_in);
 
        long row = db.insert(DATABASE_TABLE, null, initialValues);
        db.close();
 
        return row;
    }
 
 
    /**
     * Изменение строчки
     */
   // public boolean updateTable(long rowId, String FIO, String DOL,
   //                           String TEL) {
   //     SQLiteDatabase db = this.getWritableDatabase();
   //     ContentValues updateValues = createContentValues(FIO, DOL,
   //             TEL);
 
   //     return db.update(DATABASE_TABLE, updateValues, COLUMN_ID + "=" + rowId,
   //             null) > 0;
   // }
 
    /**
     * Удаление контакта
     */
    public void deleteTable(long rowId) {
        SQLiteDatabase db = this.getWritableDatabase();
        db.delete(DATABASE_TABLE, COLUMN_ID + "=" + rowId, null);
        db.close();
    }
 
    /**
     * Получение всех контактов
     */
    public Cursor getFullTable() {
        SQLiteDatabase db = this.getWritableDatabase();
        return db.query(DATABASE_TABLE, new String[] { COLUMN_ID,
                        COLUMN_FIO, COLUMN_TASK,COLUMN_TEL, COLUMN_TASK2, COLUMN_BONUS2 }, null,
                null, null, null, null); 
    }
 
    /**
     * Получаем конкретный контакт
     */
    public Cursor getTable(long rowId) throws SQLException {
        SQLiteDatabase db = this.getReadableDatabase();
        Cursor mCursor = db.query(true, DATABASE_TABLE,
                new String[] { COLUMN_ID, COLUMN_FIO, COLUMN_TASK,
                        COLUMN_TEL, COLUMN_TASK2, COLUMN_BONUS2 }, COLUMN_ID + "=" + rowId, null,
                null, null, null, null);
        if (mCursor != null) {
            mCursor.moveToFirst();
        }
        return mCursor;
    }
 
 
    /*
     * Для добавления или обновления нам надо создать объект ContentValues.
     * Данный объект представляет словарь, который содержит набор пар "ключ-значение".
     * Для добавления в этот словарь нового объекта применяется метод put.
     * Первый параметр метода - это ключ, а второй - значение.
     */
    
    private ContentValues createContentValues(Integer fio_in, Integer task_in, Integer tel_in, Integer task2_in, Integer bonus2_in) {
        ContentValues values = new ContentValues();
        values.put(COLUMN_FIO, fio_in);
        values.put(COLUMN_TASK, task_in);
        values.put(COLUMN_TEL, tel_in);
        values.put(COLUMN_TASK2, task2_in);
        values.put(COLUMN_BONUS2, bonus2_in);
        return values;
    }
 
    public boolean updateTable(long rowId, Integer fio_in, Integer task_in, Integer tel_in, Integer task2_in, Integer bonus2_in) {
        // TODO Auto-generated method stub
          SQLiteDatabase db = this.getWritableDatabase();
            ContentValues updateValues = createContentValues(fio_in, task_in, tel_in, task2_in, bonus2_in);
     
            return db.update(DATABASE_TABLE, updateValues, COLUMN_ID + "=" + rowId,
                    null) > 0;
        
    }
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
25.10.2017, 20:25
Ответы с готовыми решениями:

Почему Android Studio не сразу подхватывает изменения кода(только после переустановки apk)?
Иногда после изменения кода в Android Studio (к примеру изменю вывод Log.d )и запуска его смартфоне...

Почему падает программа до исполнения основного кода
09-05 11:15:57.226: E/dalvikvm(759): Could not find class 'twitter4j.http.AccessToken', referenced...

После изменения кода, отображает элементы до изменения
Ребята, помогите, такая проблема: есть корпоративный сайт написанный на ASP.NET работает через IIS ...

Почему после изменения кода продолжает выполняться сценарий старого кода?
ВОПРОС Почему после изменения кода продолжает выполняться сценарий старого кода? ИМЕЕТСЯ...

Сохранение кода страницы после ее изменения JavaScript-ом
Подскажите пожалуйста, как можно сохранять html страницу после изменения её javascript-ом....

2
ILNAR_93
Android
243 / 240 / 52
Регистрация: 19.01.2013
Сообщений: 1,895
Записей в блоге: 3
25.10.2017, 21:19 2
log нужен
0
demixdn
310 / 255 / 79
Регистрация: 31.10.2016
Сообщений: 619
26.10.2017, 15:38 3
Лучший ответ Сообщение было отмечено Elias_smith как решение

Решение

Цитата Сообщение от Elias_smith Посмотреть сообщение
COLUMN_BONUS2 + "text not null"
пробел для начала -> " text not null"
1
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
26.10.2017, 15:38

Перегрузка класса - после изменения кода перегрузить метод
class DrawPoint : public QWidget { public: DrawPoint(QWidget *p = 0) : QWidget(p){} ...

Исполнение кода после изменения данных в таблице MSSQL
Есть задача организовать перенос данных из базы в MSSQL в базу 1С. А конкретнее синхронизация баз...

После изменения кода у Form.Designer форма стала нерабочей
Form2.Designer namespace WindowsFormsApplication4 { partial class Form2 { ...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru