2013-07-25 87 views
0

某處在我的代碼我這樣做:讓Android的選擇下一個SQLITE _ID

 contentValues = new ContentValues(); 

//  contentValues.put("_ID",BaseColumns._ID); // Not Working can someone explain what this is and how it's used BaseColumns._ID ? 
     contentValues.put("_ID", null); // Not working, Everywhere they say to pass in a null value and Android will do it's magic ... 

     contentValues.put("_ID", "1") // This works but has to be changed manually every time 
     contentValues.put("login", username.getText().toString()); 
     contentValues.put("password", pwd.getText().toString()); 
     contentValues.put("type", type); 

這是我小的模式:

public static final String CREATE_DATABASE = "CREATE TABLE "+ 
      TABLE +"(_ID INTEGER PRIMARY KEY AUTOINCREMENT, login VARCHAR(50) NOT NULL, password VARCHAR(50) NOT NULL, type CHAR(1) NOT NULL)"; 

有人說,不要把AUTOINCREMENT,但在其他一些您可以在代碼中看到它。我不知道該做什麼。 如何讓Android選擇下一個增量值?

回答

1

使用autoincrement會自動分配一個ID插入到數據庫中的任何新行

你並不需要調用contentValues.put("_ID", null);甚至以任何方式訪問列,當你插入一些到數據庫中,它是自動完成的

+0

*巴掌*好吧完美的工作...任何想法如何使用'BaseColumns._ID'? – hayonj