主键自动增量无法在android数据库上运行?

时间:2013-02-17 15:45:59

标签: android android-sqlite

  public static final String Database_Name="content.db";
public static final int Database_Version=1;
public static final String Table_Name="images";
public static final String Column1="contentid";
public static final String Column2="content_type";
public static final String Column3="content";
public static final String Column4="has_update";
public static final String Column5="server";
public static final String Column6="_id";
public static final String Create_Database = 
        "CREATE TABLE " + Table_Name +
                " (" + Column6 + " INTEGER PRIMARY KEY AUTOINCREMENT, " +
                Column1 + " LONG, " + 
                Column2 + " TEXT NOT NULL, " + 
                Column3 + " TEXT NOT NULL, " + 
                Column4 + " INTEGER, " + 
                Column5 + " INTEGER); ";

我通过使用上面的代码并执行Create_Database查询在android数据库中创建一个表但是我在logcat中收到错误,说自动增量只能分配给一个整数主键? 我在这做错了什么?

02-17 21:08:27.016: E/SQLiteLog(8460): (1) AUTOINCREMENT is only allowed on an INTEGER PRIMARY KEY

这是我在logcat中得到的错误。任何帮助.....

3 个答案:

答案 0 :(得分:5)

试试这个

 public static final String Create_Database = 
    "CREATE TABLE " + Table_Name +
            " (" + Column6 + " INTEGER PRIMARY KEY, " +
            Column1 + " LONG, " + 
            Column2 + " TEXT NOT NULL, " + 
            Column3 + " TEXT NOT NULL, " + 
            Column4 + " INTEGER, " + 
            Column5 + " INTEGER " + ")";

声明 INTEGER PRIMARY KEY 的列将autoincrement

答案 1 :(得分:-1)

尝试NOT NULL以防止出现第二次错误。

也尝试这样INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT

答案 2 :(得分:-1)

试试这个

INTEGER PRIMARY KEY AUTOINCREMENT NULL

它对我有用