2010-02-15 94 views
0

UPDATE:見自答,「固定,需要channge的where子句」SQLite的,不能刪除列

我設置了內容提供商,由於某種原因,我能夠刪除行這樣:

getContentResolver().delete(myUri, "_id=" + "3", null); 

但我不能夠刪除的行方式:

getContentResolver().delete(myUri, "NAME=" + "chris", null); 

收到此錯誤:

02-15 15:48:08.197: ERROR/AndroidRuntime(3043): android.database.sqlite.SQLiteException: no such column: chris: , while compiling: DELETE FROM User WHERE NAME=chris


我已經檢查了我的數據庫文件,它的存在..但由於某種原因,我只能通過_id列刪除我的數據庫列,

我該如何解決這個問題?

錯誤:

02-15 15:48:08.197: ERROR/AndroidRuntime(3043): android.database.sqlite.SQLiteException: no such column: idanmoshik1: , while compiling: DELETE FROM User WHERE USER_NAME=idanmoshik1

* User是我的表的名稱。

感謝,

Moshik

回答

0

固定,需要channge的where子句

+1

你爲什麼不正確關閉您的問題或答案標籤1或2的正確答案? – Zordid

3

您應該圍繞chrisidanmoshik1加單引號(')這樣

getContentResolver().delete(myUri, "NAME='chris'", null); 
+0

你能解釋一下爲什麼嗎?非常感謝你。 – AmyWuGo

2

好多了,忘了使用

逃逸報價等細微之處
final int n = getContentResolver().delete(myUri, "NAME = ?", new String[] {"user's name"});