2011-10-19 11 views
0

このサイトの最初の質問はここにあります。 よく更新クエリに関する問題があります。Sqliteのwhere句を使ったアップデートクエリ

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

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

ちょうど "どこに"句を追加したいですか?

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

よう

は、だから私は何をすべきでしょうか?

答えて

0

nullを第3引数として渡す代わりに、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}); 

あなたは常に準備文の構文を使用する必要があります。したがって、実際にはWHEREの値をStringに追加するのではなく、WHERE -query-stringの?を置き換えるString配列をとる4番目の引数を使用します。

文字列配列の最初の要素は、クエリ文字列の最初の?に置き換えられます(以下同様)。結局、これはWHERE節を次のように作成します。

WHERE j_id = '-1' 
+0

はい、私は試しましたが、うまくいきませんでした。私は 'Sqlite'で新しいです。 Syntaxの行を書いてください。期待して感謝します。 – xkrlaix

+0

私はこれを私の元の答えに加えました。 –

+0

ありがとうございました。できます。 – xkrlaix