Ich habe eine Tabelle TABLE_EXAM. Ich muss den Wert eines bestimmten Datensatzes aktualisieren, indem ich
ID übergeben. Aber mein Code ist nicht in der Lage, den Code zu aktualisieren. Ich verstehe nicht, was in meinem Code falsch ist.
Bitte geben Sie mir einen Hinweis oder Referenz ... Vielen Dank im Voraus ..
hier als Referenz mein Code ....Wie aktualisiert man den Inhalt von Sqlite?
public void updateExamDetails(int id,ObjectiveWiseQuestion owq)
{
SQLiteDatabase db= this.getWritableDatabase();
String selectQuery=("update exam set (examdetails, subchawise, examtype, noquestion, marks, subject_id, chapter_id) where exam_id ='"+ id +"'");
Cursor cursor = db.rawQuery(selectQuery, null);
if (cursor.moveToFirst())
{
do {
ContentValues values = new ContentValues();
values.put(COLUMN_NO_QUESTION, owq.getNoOfQuestion());
values.put(COLUMN_MARKS, owq.getMarks());
values.put(COLUMN_CHAP_ID, owq.getChapterId());
values.put(COLUMN_SUB_ID, owq.getSubjectId());
values.put(COLUMN_SUBCHAWISE,owq.getSubChapwise());
values.put(COLUMN_EXAM_TYPE, owq.getExamType());
values.put(COLUMN_EXAM_DETAILS, owq.getExamDetails());
db.insert(TABLE_EXAM, null, values);
db.close();
}
while (cursor.moveToNext());
}
}
Logcat eine Warnung haben ..
WARN/System.err(7227): android.database.sqlite.SQLiteException: near "(": syntax error: , while compiling: update exam set (examdetails=?, subchawise=?, examtype=?, noquestion=?, marks=?, subject_id=?, chapter_id=?) where exam_id ='1'
Ich kann nur raten hier, aber ich würde erwarten, dass Ihre Abfrage string, um einige Parameter zum Binden zu benötigen (normalerweise etwas wie 'set examdetails = ?, subchwise = ?, ...'). – bdares
nein..es funktioniert nicht –