(1)"AUTO_INCREMENT"附近:更改表时出现语法错误

Ahl*_*lam 8 sqlite android

我正在尝试更改定义如下的SQLite表:

    String CREATE_TABLE="CREATE TABLE IF NOT EXISTS " + tab_NAME + " ("
                            + row_ID + " INTEGER PRIMARY KEY , "
                            + row_NAME + " TEXT, "
                            + row_EMAIL + " TEXT, "
                            + row_WEBSITE + " TEXT, "
                            + row_TELEPHONE1 + " TEXT, "
                            + row_TELEPHONE2 + " TEXT, "
                            + row_TELEPHONE3 + " TEXT, "
                            + row_TELEPHONE4 + " TEXT, "
                            + row_TELEPHONE5 + " TEXT);";
        db_name.execSQL(CREATE_TABLE);

        String newTab="CREATE TABLE IF NOT EXISTS temp ("
                + row_ID + " INTEGER PRIMARY KEY AUTOINCREMENT , "
                + row_NAME + " TEXT, "
                + row_EMAIL + " TEXT, "
                + row_WEBSITE + " TEXT, "
                + row_TELEPHONE1 + " TEXT, "
                + row_TELEPHONE2 + " TEXT, "
                + row_TELEPHONE3 + " TEXT, "
                + row_TELEPHONE4 + " TEXT, "
                + row_TELEPHONE5 + " TEXT);";
        db_name.execSQL(newTab);
Run Code Online (Sandbox Code Playgroud)

这是auto_increment alter语句:

    String alter="ALTER TABLE temp AUTO_INCREMENT=1;";
    ourDatabase.execSQL(alter);
Run Code Online (Sandbox Code Playgroud)

我说错了 (1) near AUTO_INCREMENT: syntax error

怎么了??任何帮助?

Abh*_*wal 14

在SQLite中,声明为INTEGER PRIMARY KEY的列将自动自动递增.删除AUTOINCREMENT关键字,然后尝试.

查看SQLite常见问题解答

  • 删除表并重新创建它. (2认同)

art*_*mal 5

sqlite设置列中PRIMARY KEY是一个AUTOINCREMENT.因此无需将column明确指定为AUTOINCREMENT.请查看此链接以供参考.