gpt4 book ai didi

java - SQLiteException 没有这样的表,我错过了什么吗?

转载 作者:行者123 更新时间:2023-12-02 11:22:56 28 4
gpt4 key购买 nike

我整个上午都在研究此错误的其他实例,但到目前为止我所尝试的一切都不起作用。这可能是显而易见的事情,因为我对此很陌生。

我正在尝试返回 GET_ALL_INGREDIENTS 查询的结果。然后我会将其放入二维数组中,但您无需担心这一点。我的 TABLE_RECIPES 表工作正常。

SQLiteException:没有这样的表:TABLE_INGREDIENTS(代码1):,编译时:SELECT INGR...等等...

这发生在这段代码的最后一行:

public String[][] getRecipeIngredients(int id) {

String GET_ALL_INGREDIENTS = "SELECT INGREDIENT_NAME, INGREDIENT_QUANTITY, INGREDIENT_UNIT " +
"FROM TABLE_INGREDIENTS " +
"INNER JOIN TABLE_RECIPE_INGREDIENTS ON TABLE_RECIPE_INGREDIENTS.INGREDIENT_ID=TABLE_INGREDIENTS.INGREDIENT_ID " +
"WHERE RECIPE_INGREDIENTS.RECIPE_ID=" + id;

db = new MyDBHandler(mContext);
SQLiteDatabase db = this.getReadableDatabase();
Cursor c = db.rawQuery(GET_ALL_INGREDIENTS, null);

表创建:

final String CREATE_TABLE_RECIPES = "CREATE TABLE IF NOT EXISTS " +
TABLE_RECIPES + "(" +
RECIPE_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
RECIPE_NAME + " TEXT, " +
RECIPE_INSTRUCTIONS + " TEXT " +
")";

final String CREATE_TABLE_INGREDIENTS = "CREATE TABLE IF NOT EXISTS " +
TABLE_INGREDIENTS + "(" +
INGREDIENT_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
INGREDIENT_NAME + " TEXT NOT NULL UNIQUE " +
")";

final String CREATE_TABLE_RECIPE_INGREDIENTS = "CREATE TABLE IF NOT EXISTS " +
TABLE_RECIPE_INGREDIENTS + "(" +
RECIPE_ID + " INTEGER NOT NULL, " +
INGREDIENT_ID + " INTEGER NOT NULL, " +
INGREDIENT_QUANTITY + " REAL, " +
INGREDIENT_UNIT + " TEXT, " +
"PRIMARY KEY (" + RECIPE_ID + "," + INGREDIENT_ID + "), " +
"FOREIGN KEY (" + RECIPE_ID + ") REFERENCES " + TABLE_RECIPES + "(" + RECIPE_ID + "), " +
"FOREIGN KEY (" + INGREDIENT_ID + ") REFERENCES " + TABLE_INGREDIENTS + "(" + INGREDIENT_ID + ")" +
")";

public void onCreate(SQLiteDatabase db) {

db.execSQL(CREATE_TABLE_RECIPES);
db.execSQL(CREATE_TABLE_INGREDIENTS);
db.execSQL(CREATE_TABLE_RECIPE_INGREDIENTS);
}

感谢您的阅读,我非常感谢我能得到的任何帮助。

最佳答案

TABLE_INGREDIENTS 是一个变量。它的值可能不是字符串文字“TABLE_INGREDIENTS”。所以你可能想要改变

"FROM TABLE_INGREDIENTS " +

"FROM " + TABLE_INGREDIENTS +

(您的 SQL 中也存在许多其他类似问题。)

关于java - SQLiteException 没有这样的表,我错过了什么吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49797616/

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