这是我将数据插入数据库的代码。一切都很好,没有错误。我输入了我应该输入的所有内容。
但是以某种方式我仍然无法插入数据。是什么原因?当我检查数据库时,表cart
为空。
public void insertrecord() {
Bundle bundle = this.getIntent().getExtras();
long rowId = bundle.getLong("rowId");
mydb2 = dbhelper.getWritableDatabase();
myCursor2 = mydb2.query(Dbhelper.CART_NAME, allColumns2, "ID_=" + String.valueOf(rowId), null, null, null, null);
myCursor.moveToFirst();
if (!myCursor.isAfterLast()) {
String cartname = (myCursor.getString(myCursor.getColumnIndex(Dbhelper.COLUMN_TITLE)));
mydb2.execSQL("insert into cart(id_, cartRecord) VALUES(" + rowId + ", '" + cartname + "');");
}
}
答案 0 :(得分:0)
您想做什么?
首先,您找到带有id_ = rowId
的行,然后如果该行存在,您要插入具有相同的id_
的另一行吗?
表格中的id_
UNIQUE
不是吗?
也许您应该做相反的事情,这意味着如果此id_
不存在,则插入带有cartname
值的新行:
if (myCursor.getCount() == 0) {
mydb2.execSQL("insert into cart(id_, cartRecord) VALUES(" + rowId + ", '" + cartname + "');");
}