Member 14088451 Ответов: 2

Android studio, sqlite, "не имеет имени столбца"


Здравствуйте так я получил эту проблему от LOGCAT

"андроид.базы данных.базы данных SQLite.SQLiteException: salary_table таблице нет столбца с именем ID (код 1 SQLITE_ERROR): при компиляции: вставить в salary_table(ИД,зарплата,имя) значения (?,?,?)"

И мой код-это прямой код, который, как я знаю, работает, поэтому мой вопрос: в чем проблема?

Ценю любую помощь

@Override
   public void onCreate(SQLiteDatabase db) {
       db.execSQL("CREATE TABLE " + TABLE_NAME
               + "(ID INTEGER PRIMARY KEY AUTOINCREMENT,"
               + COLUMN_NAME + " TEXT,"
               + COLUMN_SALARY + " TEXT)");

   }


Что я уже пробовал:

Попробовал несколько различных вариантов создания таблицы.

Alek Massey

Зачем использовать автоинкремент, когда некоторые сайты SQLlite советуют против этого? SQLite AUTOINCREMENT : почему вы должны избегать его использования[^]

Значение по умолчанию в SQLlite для первичного ключа на единицу больше, чем самое высокое значение для этого столбца в таблице. Если только вы не включаете значение для столбца при вставке.

Member 14088451

Итак, в основном, что УР говорит, что я могу удалить автоинкремент, и результат будет тот же самый? Попробовал и работал без приращения, буду иметь это в виду, спасибо.

2 Ответов

Рейтинг:
2

Alek Massey

Зачем использовать автоинкремент, когда некоторые сайты SQLlite советуют против этого? SQLite AUTOINCREMENT : почему вы должны избегать его использования[^]

Значение по умолчанию в SQLlite для первичного ключа на единицу больше, чем самое высокое значение для этого столбца в таблице. Если только вы не включаете значение для столбца при вставке.


Рейтинг:
19

Member 14088451

Пришлось деинсталлировать и переустановить на эмуляторе.