Android语法错误(代码1)添加Where子句时的SQLite rawquery问题

时间:2016-04-21 13:43:23

标签: java android sqlite android-sqlite

似乎没有弄清楚我的查询语句有什么问题,根据示例原始查询sqlite这是它的外观:

Cursor cursor = getReadableDatabase().
rawQuery("select * from todo where _id = ?", new String[] { id });

好的很容易,所以我试着这样做:

String query = "SELECT RESULT FROM " + TABLE_NAME + "WHERE " + COL_3 + " = Nitrates ";

或者

String query = "SELECT RESULT FROM " + TABLE_NAME + "WHERE TYPE = Nitrates";

既不起作用,但这很好......

String query = "SELECT RESULT FROM " + TABLE_NAME;

那么是什么给我的部分呢?

我得到的错误:

E/AndroidRuntime: FATAL EXCEPTION: main android.database.sqlite.SQLiteException: near "=": syntax error (code 1): , while compiling: SELECT RESULT FROM testData_tableWHERE TYPE = Nitrates

1 个答案:

答案 0 :(得分:4)

  1. 您的表名与WHERE之间需要空格。

  2. 您需要将字符串文字放在'single quotes'中,或使用?变量绑定,如您所拥有的示例所示。