让Android选择下一个SQLITE _ID

时间:2013-07-25 01:08:52

标签: java android sqlite auto-increment

在我的代码中,我这样做:

        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 个答案:

答案 0 :(得分:1)

使用autoincrement会自动为插入数据库的新行

分配ID

当您将某些内容插入数据库时​​,您无需以任何方式调用contentValues.put("_ID", null);甚至访问该列,它会自动完成