2011-10-19 44 views
0

它是我在這個網站上的第一個問題。 以及我有更新查詢問題。在Sqlite中使用where子句進行上面的查詢

ContentValues args = new ContentValues(); 
    args.put("j_id", str); 

    db.update(TABLE_NAME2, args, null, null); 

我只是想在其中添加「where」子句。

UPDATE TABLE_NAME2 
    SET j_id=str 
    WHERE j_id = '-1' 

那麼應該怎麼辦?

回答

0

而不是通過null作爲第三個參數,您可以通過WHERE條款。 See the docs


在你的情況,這應該是這樣的:

String value = "-1"; // Or something else 
String column = "j_id"; // The Column for the WHERE-clause 
db.update(TABLE_NAME2, args, column+" = ?", new String[]{value}); 

你應該總是使用準備好的語句的語法。因此,您實際上並沒有在String中添加WHERE-clause的值,而是使用第四個參數取代WHERE-query字符串中的?

將字符串數組的第一個元素替換爲查詢字符串中的第一個?,依此類推。所以最後,這會創建一個WHERE子句,如下所示:

WHERE j_id = '-1' 
+0

是的,我試過了,但沒有奏效。我是'Sqlite'的新手。你能寫一行語法嗎?感謝預期。 – xkrlaix

+0

我將此添加到我原來的答案中。 –

+0

非常感謝。有用。 – xkrlaix