【发布时间】:2014-08-02 18:03:14
【问题描述】:
我正在开发 Android 项目,我正在使用 SQLite 数据库,我编写了一个插入查询:
sqliteDB_Obj.execSQL("INSERT INTO tbl_order_master (user_id, order, amount)" + "VALUES(" + strUserId +","+ strOrderString +","+ dblAmount +");");
但我收到以下错误
android.database.sqlite.SQLiteException: near "order": syntax error (code 1): , while compile: INSERT INTO tbl_order_master (user_id, order, amount) VALUES(dny, my test order , 160.0);
有些人之前也问过同样的问题,所以根据他们提到的答案,我尝试了以下方式:
String strTableName="tbl_order_master";
String strQuery= String.format("INSERT INTO %s (user_id, order, amount) VALUES(%s, %s, %s);", strTableName, strUserId, strOrderString, ""+dblAmount);
sqliteDB_Obj.execSQL(strQuery);
但仍然出现同样的错误请帮忙..谢谢..!
【问题讨论】:
-
可能问题是订单名是保留字?尝试使用 sort_order 或类似的列名或用反引号写。
-
Sqlite keywords 和“订单”就是其中之一
-
更改列名“order”或使用
order