gpt4 book ai didi

java - SQLiteException : no such table 的问题

转载 作者:行者123 更新时间:2023-12-01 17:22:55 30 4
gpt4 key购买 nike

我有一个包含两个表的数据库,每次我尝试向第二个表添加新项目时,它都会说没有这样的表。请帮忙。

数据库助手:

@Override
public void onCreate(SQLiteDatabase db) {
String createTable = "CREATE TABLE " + TableName + " ( "+COL_1 +" INTEGER PRIMARY KEY AUTOINCREMENT, "+COL_2+ " TEXT, "+COL_3+ " TEXT, "+COL_4+" TEXT, "+COL_5+ " INTEGER)";
String createSubjectsTable = "CREATE TABLE "+SubjectsTableName+" ( "+Subjects_COL_1+" INTEGER PRIMARY KEY AUTOINCREMENT, "+Subjects_COL_2+" TEXT, "+Subjects_COL_3+" TEXT, "+Subjects_COL_4+" TEXT, "+Subjects_COL_5+" TEXT)";
db.execSQL(createTable);
db.execSQL(createSubjectsTable);
}

@Override
public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
db.execSQL("DROP TABLE IF EXISTS "+ TableName);
db.execSQL("DROP TABLE IF EXISTS "+SubjectsTableName);
onCreate(db);
}

DatabaseHelper 的添加方法:

 public boolean addSubjectData (String name, String letters, String teacher, String color){
SQLiteDatabase db = this.getWritableDatabase();
ContentValues contentValues = new ContentValues();
contentValues.put(Subjects_COL_2,name);
contentValues.put(Subjects_COL_3,letters);
contentValues.put(Subjects_COL_4,teacher);
contentValues.put(Subjects_COL_5,color);
long result = db.insert(SubjectsTableName, null, contentValues);
if (result==-1){
return false;
}
else{
return true;
}
}

新项目创建的位置:

saveBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(name!=null && letters!=null && color!=null){
mDatabase.addSubjectData(name,letters,teacher,color);
}
}
});

最佳答案

您可能更改了架构并且没有增加数据库版本,因此您可能有两个选择:

  • 增加数据库版本
  • 或者,如果您没有发布应用程序的早期版本,请从模拟器中卸载应用程序,然后运行项目

关于java - SQLiteException : no such table 的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61259708/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com