我的数据库创建和填充没有任何问题。我什至有一个自定义适配器来在我的活动中显示列表视图中的行。问题是我的 _id 列实际上没有任何 ID。我在 listItemClick 上出现了一个对话框,数据被放入文本框中,底部有按钮,我试图让“删除”按钮工作,以便用户可以删除该记录。我正在尝试删除调用 _id 的记录,但是我的数据库的 ID 列对于我的所有记录都是空的。对话框显示每个项目的 ID 号,所有项目都显示为 0,当我使用 sqlite 数据库浏览器打开数据库时,每条记录的 id 列都是完全空的。谁能帮忙告诉我这是为什么?这是我使用的教程: http://android-er.blogspot.co.uk/2011/06/edit-row-in-sqlite-database-using.html
一些代码:
创建数据库和表:
public static final String KEY_ID = "_id";
public static final String KEY_LESSON = "Lesson";
public static final String KEY_DAY = "Day";
public static final String KEY_START = "Start";
public static final String KEY_END = "End";
public static final String KEY_LOCATION = "Location";
private SQLiteDatabase db;
private DBHelper dbHelper;
private final Context context;
private static final String DATABASE_CREATE = "create table Schedule" + " (" + KEY_ID + " INTERGER PRIMARY KEY,"
+ KEY_LESSON + " text not null, " + KEY_DAY + " text not null," + KEY_START + " text not null, " + KEY_END
public void deleteEntry(int id) {
db.delete(DATABASE_TABLE, KEY_ID + "=" +id, null);
}
对话:
myDialog.setPositiveButton("Delete", new DialogInterface.OnClickListener() {
public void onClick(DialogInterface arg0, int arg1) {
db.open();
db.deleteEntry(item_id);
}
});