我想插入数据到我的SQLite数据库。 它由名为id,Questions和Answer的3列组成。插入数据到SQLite
这是我addQuestion方法
long addQuestion(addtodb question) {
SQLiteDatabase db = this.getWritableDatabase();
ContentValues values = new ContentValues();
values.put(KEY_NAME, KEY_NAME); // question Name
values.put(KEY_ANSWER, KEY_ANSWER); // answer
// Inserting Row
return db.insert(TABLE_QUESTIONS, null, values);
//db.close(); // Closing database connection
}
addtodb getQuestion(int id) {
SQLiteDatabase db = this.getReadableDatabase();
Cursor cursor = db.query(TABLE_QUESTIONS, new String[] { KEY_ID,
KEY_NAME, KEY_ANSWER }, KEY_ID + "=?",
new String[] { String.valueOf(id) }, null, null, null, null);
if (cursor != null)
cursor.moveToFirst();
addtodb question = new addtodb(Integer.parseInt(cursor.getString(0)),
cursor.getString(1), cursor.getString(2));
return question;
}
我打电话这种方式这种方法,
DatabaseHandler db = new DatabaseHandler(this);
long id = db.addQuestion(new addtodb(0, "Question1", "answer1"));
id = db.addQuestion(new addtodb(0, "Question2", "answer2"));
db.close();
我想记录是1, Question1, Answer1
同样。
但我得到1, Question, Answer
。
我想不通哪里出了问题。
什么是你'addtodb'类是什么样子? –
请显示您正在存储列名的KEY_NAME和KEY_ANSWER –
的声明,而不是它们的值。请参阅'vales.put' – njzk2