2012-04-11 9 views
2

私はsqliteのAndroidデータベースの値を更新しようとしています。私は使用しています:アンドロイドデータベースを更新

public void updateName(int id, 
       String name) { 
      String update = "UPDATE STUDENT SET IS_name = " + "'" + name + "'" 
        + " WHERE ID = " + id; 
      database.rawQuery(update , null); 
    } 

しかし、データベースは更新されません。助けてください?

+0

生のクエリは、cursor.moveToFirst()などの返されたCursorを持つものに実際にコミットした場合にのみコミットされます。しかし、単にexecSQLを使って更新してください(Samir Mangroliyaの答えを見てください)。 – j0ntech

+0

よろしくお願いします。 –

答えて

2

使用

db.execSQL(update); 

使用

String update = "UPDATE STUDENT SET IS_name = '"+ name +"' WHERE ID = " + id; 
db.execSQL(update); 
0

あなたは未処理クエリに選択引数を渡していません。 String配列を作成し、nameとidの値をその順番で追加する必要があります。次に、nullではなく、rawQueryに2番目の引数として配列を渡します。

0

,,などのデータベースを更新する機能を以下に示します。