Я пытаюсь познакомиться с Android и API его базы данных.
Я создал класс, который наследует от SQLiteOpenHelper и это
как я создаю таблицу в базе данных
@Override
public void onCreate(SQLiteDatabase db) {
try {
db.execSQL("CREATE TABLE " + FUELS_TABLE_NAME + " ("
+ "_ID INTEGER PRIMARY KEY AUTOINCREMENT, "
+ "DATE_OF_FUELS DATE DEFAULT CURRENT_TIME,"
+ "SELLER_POSITION TEXT DEFAULT 'unknown',"
+ "AMOUNT REAL"
+ ");"
);
} catch (SQLException e) {
Log.e(DATABASE_NAME, e.toString());
}
}
Функция, используемая для добавления данных в БД, реализована в
тот же класс
public void addNewFuel(float amount) {
// Create the content to insert into the database
ContentValues newEntry = new ContentValues();
newEntry.put("amount", amount);
// Get database handler
try {
db = getWritableDatabase();
} catch (SQLException e) {
Log.e(DATABASE_NAME, e.toString());
return;
}
// Begin transaction and insert data
long returnedValue;
db.beginTransaction();
try {
returnedValue = db.insertOrThrow(FUELS_TABLE_NAME, null, newEntry);
Log.v(DATABASE_NAME, "return value " + returnedValue);
} catch (SQLException e) {
Log.e(DATABASE_NAME, e.toString());
} finally {
db.endTransaction();
}
db.close();
}
но, по-видимому, данные не добавляются. ReturnValue всегда равно 1. Метод не выбрасывает,
и когда я вынимаю БД с помощью adb и смотрю на ее содержимое, оно совершенно пустое
Я просто не могу понять, чего мне не хватает.
Любое предложение будет оценено.
Спасибо,
S