Android sqlite通过字符串为条件执行删除某一记录的问题
publicbooleandeleteitem(Stringtitle){returndb.delete(DATABASE_TABLE,KEY_TITLE+"="+tit...
public boolean deleteitem(String title){
return db.delete(DATABASE_TABLE, KEY_TITLE +"=" + title , null)>0;
}
其中Key_Title 是我的表中的列,我的表因为id autoincrement每次建立完在执行query时候都提示我没有这样的column,所以我的表只有两列。
Title | Content
12345 xxx
12345f xxx
wwwa xxx
当我删除12345这条记录时候可行,但是12345f就立马出错(数字+字符)
错误原因是07-09 02:55:13.792: E/AndroidRuntime(802): android.database.sqlite.SQLiteException: unrecognized token: "12345f": , while compiling: DELETE FROM contentinfo1 WHERE title=12345f
如果是纯字母,又出现另一个错误 比如我插入一个title 为wwwa 的记录之后
07-09 07:48:29.464: E/AndroidRuntime(351): android.database.sqlite.SQLiteException: no such column: wwwa: , while compiling: DELETE FROM contentinfo1 WHERE title=wwwa 展开
return db.delete(DATABASE_TABLE, KEY_TITLE +"=" + title , null)>0;
}
其中Key_Title 是我的表中的列,我的表因为id autoincrement每次建立完在执行query时候都提示我没有这样的column,所以我的表只有两列。
Title | Content
12345 xxx
12345f xxx
wwwa xxx
当我删除12345这条记录时候可行,但是12345f就立马出错(数字+字符)
错误原因是07-09 02:55:13.792: E/AndroidRuntime(802): android.database.sqlite.SQLiteException: unrecognized token: "12345f": , while compiling: DELETE FROM contentinfo1 WHERE title=12345f
如果是纯字母,又出现另一个错误 比如我插入一个title 为wwwa 的记录之后
07-09 07:48:29.464: E/AndroidRuntime(351): android.database.sqlite.SQLiteException: no such column: wwwa: , while compiling: DELETE FROM contentinfo1 WHERE title=wwwa 展开
3个回答
展开全部
return db.delete(DATABASE_TABLE, KEY_TITLE +"=‘" + title+“’” , null)>0;
title要添加单引号。
其次注意列名称是Title 不是 title.
title要添加单引号。
其次注意列名称是Title 不是 title.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
有没有先调用打开Sqlite3的databasehepler.getwrite...()这个方法?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询