android.database.sqlite.SQLiteException: syntax error



在我的应用程序中,我需要连接两个表,我使用了以下代码:

Cursor shapes_cur = sq.getWritableDatabase().rawQuery("SELECT name from shapes INNER JOIN shapes ON shape_to_drug.id_shape=shapes.id WHERE shape_to_drug.id_drug =" + drug_id + " WHERE shape_to_drug.id_hp =" + hp_id, null);

但是应用程序强制关闭,我在logcat中收到此错误:

android.database.sqlite.SQLiteException: near "WHERE": syntax error (code 1): , while compiling: SELECT name from shapes INNER JOIN shapes ON shape_to_drug.id_shape=shapes.id WHERE shape_to_drug.id_drug =360 WHERE shape_to_drug.id_hp =5

查询中有两个 WHERE 子句,您应该使用 AND:

"SELECT s.name from shapes s INNER JOIN shapes shape_to_drug ON shape_to_drug.id_shape=s.id WHERE shape_to_drug.id_drug =" + drug_id + " AND shape_to_drug.id_hp =" + hp_id

相关内容

最新更新