Я пытаюсь добавить новую строку в существующую базу данных SQLite, но по какой-то причине, похоже, этого не происходит.Я создал этот метод для вставки строки в таблицу:
public void insertToTable(ArrayList<String> courseAttributes, ArrayList<String> attributeValues){
ContentValues cv = new ContentValues();
for (int i = 0 ; i < courseAttributes.size() ; i++){
cv.put(courseAttributes.get(i), attributeValues.get(i));
}
coursesDataBase.insert("courses", null, cv);
}
, где courseAttributes - это массив всех столбцов в таблице, attributeValues - этоМассив соответствующих значений для строки, которую я пытаюсь добавить, coursesDataBase - база данных SQLite, а " courses " - имя таблицы в этой базе данных.Я не получаю никаких ошибок при запуске его на отладчике, однако он не сохраняет новую строку в базе данных.Я вызываю метод из другого класса, между следующими методами открытия и закрытия:
public void openDataBase() throws SQLException{
//Open the database
String myPath = DB_PATH + DB_NAME;
coursesDataBase = SQLiteDatabase.openDatabase(myPath, null, SQLiteDatabase.OPEN_READWRITE);
}
и
@Override
public synchronized void close() {
if(coursesDataBase != null)
coursesDataBase.close();
super.close();
}