2012-05-09 9 views
0

私はアンドロイドSQLデータベースにデータを書き込む方法を知っていますが、データを追加しようとすると問題が発生しました。私はそれを行うときに最後のレコードだけを追加します。SQLiteを正しく更新するには?

データ更新のために私はあなたが私を助け、正しい方向に私を指すことができれば、それはいいだろう `

ContentValues updateKoment = new ContentValues(); 
      updateKoment.put("comment", text.getText().toString()); 
      db.update("MyTab",updateKoment, "PhoneNr='"+newn+"'AND Name='"+contact+"'AND comment='"+previuscom+"' AND Answered='"+Yn+"'",null); 

を使用しています。私はあなたが探しているものと信じて

+1

何が間違っているかを知るには十分なコンテキストがありません(あなたはループしていますか? 'updateKoment'で何をしていますか?など)、あなたのコードをいくつか投稿してください。 – dmon

+0

updateKomentは私の前のものを新しいものに置き換えてデータベースに保存することを意図しています。 – J1and1

+0

「最後のレコードのみを追加する」とはどういう意味ですか? – Barak

答えて

0

たぶん、あなたは、任意の既存のコメントの最後に新しいコメントを追加しようとしているのですか?そのような場合は、新しいコメントを別のテーブルに追加する場所(つまり、insert)にデータベースを再設計する必要があります。すべてのコメントは、共通のキー(以下の例ではpost_id列)を使用したい他の項目にリンクされています。 'Yeah really nice'コメントを追加することが'Nice salute'に代わる、あなたの現在のコードスニペット最後のコメントは常につまり、既存のコメントを置き換えますのよう

Table Posts: 
post_id title description 
1  'Hey' 'Description' 
2  'Ho' 'Another Description' 


Table Comments: 
comment_id post_id comment 
1   1  'Nice Salute' 
2   1  'Yeah really nice' 
3   2  'Ho Ho Ho' 

あなたは、たとえば、データベース内でこのテーブルを設定している可能性がありコメント。

(私は私があなたはまた、データベースから既存のコメントを読んで、その結果に新しいコメントを連結でき:)

を提案しようとしています何を示唆しているんだとは思わない:

String columns = { "comment" }; 
String constraint = "PhoneNr=? AND Name=? AND comment=? AND Answered=?"; 
String args[] = { newn, contact, previuscom, Yn }; 

Cursor cursor = db.query("MyTab", columns , constraint, args, null, null, null); 
String comments = cursor.getString(cursor.getColumnIndex("comment")); 
comments += text.getText().toString(); 
その後、

そして、あなたの新しいコメント文字列と同じ行を更新:

ContentValues updateKoment = new ContentValues(); 
updateKoment.put("comment", comments); 
db.update("MyTab", updateKoment, constraint, args); 

しかし、私の個人的な意見のようこれは突合せ醜いソリューションおよびデータベースアーキテクトのwithiですあなたがそれを実行することを強くお勧めします。

1

insert android SQLiteDatabase

insert (String table, String nullColumnHack, ContentValues values) 
+0

私はそれが彼がやろうとしていることだとは思わないが、彼はWHEREセクションのすべての条件を持っている... – Barak

+0

@Barakあなたはおそらく正しい。thatsちょうどどのように聞こえるか(コードスニペットを無視する場合) – Joe

関連する問題