1

我试图在现有的 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是 SQLiteDatabase,“课程”是该数据库中表的名称。当我在调试器上运行它时,我没有收到任何错误,但是它不会将新行存储在数据库中。我从另一个类调用该方法,在以下打开和关闭方法之间:

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();

}
4

0 回答 0