插入不起作用的原因?

时间:2012-11-02 11:59:04

标签: android database cursor insert-into

该表是从xml生成的,看起来像这样 CREATE TABLE orders (id INTEGER AUTO-INCREMENT PRIMARY KEY , id_room INTEGER, nr_table INTEGER, id_user INTEGER, id_payment INTEGER, total INTEGER)

com.DataConnector.DataConnector.getInstance(getApplicationContext()).executeQuery("INSERT INTO sync_log (table_name,rec_id,upd,del,synchronized)" +"VALUES (\"orders\",2,1,0,0) ");

这个没有问题。

Boolean ab=com.DataConnector.DataConnector.getInstance(getApplicationContext()).executeQuery(
"INSERT INTO orders (id_room,nr_table,id_user,id_payment,total)" +"VALUES (1,1,1,0,100) ");

抛出

no such column: orders (code 1): , while compiling: INSERT INTO orders (id_room,nr_table,id_user,id_payment,total)VALUES (1,1,1,0,100)

Log.i("cursor id", cursor.getColumnName(0) + cursor.getColumnName(1) + cursor.getColumnName(2) + cursor.getColumnName(3) +cursor.getColumnName(4) + cursor.getColumnName(5));
returns `idid_roomnr_tableid_userid_paymenttotal

所以我有表格,列

4 个答案:

答案 0 :(得分:0)

"总数之间没有空格"和" VALUES" ?

答案 1 :(得分:0)

应该是表的定义中的问题。确保所有列都是整数。

尝试再次创建这样的表:

CREATE TABLE orders (id INTEGER PRIMARY KEY, id_room INTEGER, nr_table INTEGER, id_user INTEGER, id_payment INTEGER, total INTEGER)

答案 2 :(得分:0)

我猜你需要在表格中使用_id属性。

最好总是在表中使用_id属性,如果你打算这样做的话 用游标处理。

为了更好的理解

请参阅this讨论和go through this info。在Android中使用数据库,游标和适配器可能会感觉很舒服。

答案 3 :(得分:0)

对不起男孩的问题解决了,我在订单表上有一个UPDATE触发器,并且有一个错误的错误