Database - Failure 1 (near "text" : syntax error) on 0x25c768 when preparing...
这是当我尝试运行我的应用程序时 LogCat 中显示的错误。我有以下设置数据库的代码:
private static final String DATABASE_NAME = "recipesDB";
private static final String DATABASE_TABLE = "recipes";
private static int DATABASE_VERSION = 1;
public static final String KEY_NAME = "name";
public static final String KEY_TYPE = "type";
public static final String KEY_INGREDIENTS = "ingredients";
public static final String KEY_NOTES = "notes";
public static final String KEY_BOIL = "boil";
public static final String KEY_PRIMARY = "primary";
public static final String KEY_SECONDARY = "secondary";
public static final String KEY_ROWID = "_id";
private DatabaseHelper mDbHelper; // DatabaseHelper is an inner class extending SQLiteOpenHelper
private SQLiteDatabase mDb;
private static final String DATABASE_CREATE =
"create table " + DATABASE_TABLE + " ("
+ KEY_ROWID + " integer primary key autoincrement, "
+ KEY_INGREDIENTS + " text not null, "
+ KEY_NOTES + " text not null, "
+ KEY_BOIL + " text not null, "
+ KEY_PRIMARY + " text not null, "
+ KEY_SECONDARY + " text not null); ";
private final Context cntx;
public recipesDB(Context cnt){
this.cntx = cnt;
}
我很不明白为什么会收到此错误,因为代码和语法似乎都很好。当我在手机上运行应用程序并单击打开 ActivityList 的按钮时,出现运行时错误。还有更多未显示的代码,用于打开并捕获 open()
上的 SQLExpection
等。
有什么建议吗?
最佳答案
尝试重命名列“primary”——它是一个保留字(如主键自动增量......),可能会导致 SQLite 阻塞。
关于java - Android,SQL 数据库故障 1 语法错误?找不到catlog正在讨论的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6700681/