我有一张桌子:
sdb.execSQL("create table if not exists userprofile (id integer primary key, profilename text, user text);");
我想在Android SQLite中更新profilename字段。
所以我使用了以下代码:
ContentValues cv= new ContentValues();
cv.put("user",et4.getText().toString());
String admin="user1";
sdb.update("userprofile", cv, "profilename = " + admin, null);
该表的profilename值为user1。但是当我执行此操作时,我正在
03-14 09:12:55.851: E/SQLiteLog(26616): (1) no such column: user1
请帮我解决问题。
提前致谢。
答案 0 :(得分:1)
应该是 -
ContentValues cv= new ContentValues();
cv.put("user",et4.getText().toString());
String admin="user1";
sdb.update("userprofile", cv, "profilename = '" + admin +"'", null);
希望这对你有所帮助。
答案 1 :(得分:1)
尝试这样做:
sdb.update("userprofile", cv, "profilename = ?", new String[] {"user1"});
我推荐这种方法。占位符的使用解决了这样的问题。您的方法不起作用,因为您缺少单引号。