0
我有一個使用sql遊標的自定義適配器的列表視圖。當我添加項目到我的列表視圖,該項目將被添加到我的sqlite3數據庫和列表視圖將刷新。強制執行主鍵的Android SQLite3問題
我的一個問題是,我可以添加重複的項目,我不希望我的應用程序,以允許添加重複。
我已經添加了一個主鍵到我的數據庫(itemNumber),但是數據庫似乎沒有執行此操作。這是我如何創建我的數據庫:
private static final String DB_CREATE_MASTER = "CREATE TABLE "
+ "MyTable"
+ " (_id INTEGER, itemNumber TEXT,"
+ "itemPlace TEXT," + "itemTimeTEXT,"
+ "itemCode INTEGER,"
+ "dbdatestamp TEXT" + "PRIMARY KEY(itemNumber)" +");";
有誰知道爲什麼我能itemNumber增加超過1複製到我的列表視圖?
謝謝!
編輯:
private static final String DB_CREATE_MASTER = "CREATE TABLE "
+ "MyTable"
+ " (_id INTEGER PRIMARY KEY, itemNumber TEXT,"
+ "itemPlace TEXT," + "itemTimeTEXT,"
+ "itemCode INTEGER,"
+ "dbdatestamp TEXT" + "UNIQUE(itemNumber)" +");";
編輯:
這是我如何添加itemNumber到數據庫:
values.put("itemNumber", myClass.itemNumber);
values.put("itemName", myClass.itemName);
values.put("itemTime", myClass.itemTime);
values.put("dbdatestamp", "03/01/1960 08:55");
this.db.insert(MY_TABLE, null, values);
對不起,我並不想在我的發佈代碼中在主鍵中包含_id。我仍然能夠添加重複值,當我刪除_id作爲主鍵或者如果我使物品編號唯一...請參閱上面的更新.. – littleK 2010-11-23 17:32:05