Вопрос прост и состоит в одной строке: «Функция insert () в SQLiteDatabase для Android пытается добавить значения случайным образом».
Значение:
// Database creation sql statement
private static final String DATABASE_CREATE = "create table "
+ TABLE_NAME
+"( "
+ COLUMN_ID + " integer primary key autoincrement, "
+ COLUMN_LATITUDE + "integer,"
+ COLUMN_LONGTITUDE + "integer,"
+ COLUMN_TITLE + "text,"
+ COLUMN_TEXT + " text not null"
+ ");";
А когда я ставлю значения и пытаюсь вставить их:
values.put(COLUMN_ID, marker.getId() );
values.put(COLUMN_LATITUDE, marker.getLatitude() ); // lat
values.put(COLUMN_LONGTITUDE, marker.getLongtitude() ); // long
values.put(COLUMN_TITLE, marker.getTitle() ); // Title
values.put(COLUMN_TEXT, marker.getText() ); // Text
// Inserting Row
db.insert(TABLE_NAME, null, values);
но ошибка, которую я получил:
E / Database (2542): android.database.sqlite.SQLiteException: таблица У элементов нет столбца с именем longitude: , при компиляции: INSERT INTO items (longitude, text, title, latitude, _id) VALUES (? ,?,?,?,?);
так что, я думаю, он пытается указать долготу, где находится Id, и это вызывает ошибку.
Правильно ли мое предположение? Что мне нужно изменить?