java - Android sqlite语法错误: near ")"

标签 java android mysql sqlite android-sqlite

<分区>

我在 android 中创建 sqlite 数据库时出错。

我的代码是:

public static final String TABLE_NAME = "user";
    public static final String COL1_USER_ID = "USER_ID";
    public static final String COL2_USER_NAME = "USER_NAME";
    public static final String COL3_IMEI_CODE = "IMEI_CODE";
    public static final String COL4_REGISTRATION_ID = "REGISTRATION_ID";
    public static final String COL5_MOBILE_NUMBER = "MOBILE_NUMBER";

    public static final String CREATE_TABLE = "CREATE TABLE " + TABLE_NAME + "(" + _ID + " INTEGER PRIMARY KEY,"+ COL1_USER_ID + TEXT_TYPE + COMMA_SEP + COL2_USER_NAME + TEXT_TYPE
            + COMMA_SEP + COL3_IMEI_CODE + TEXT_TYPE + COMMA_SEP + COL4_REGISTRATION_ID + VARCHAR_TYPE + COMMA_SEP + COL5_MOBILE_NUMBER + TEXT_TYPE + COMMA_SEP + ")";

错误信息是:

android.database.sqlite.SQLiteException: near ")": syntax error (code 1): , while compiling: CREATE TABLE user(_id INTEGER PRIMARY KEY,USER_ID TEXT,USER_NAME TEXT,IMEI_CODE TEXT,REGISTRATION_ID VARCHAR(255),MOBILE_NUMBER TEXT,)

如何解决?

最佳答案

最后你应该删除+ COMMA_SEP

更正

String CREATE_TABLE = "CREATE TABLE " + TABLE_NAME + "(" + _ID + " INTEGER PRIMARY KEY,"+ COL1_USER_ID + TEXT_TYPE + COMMA_SEP + COL2_USER_NAME + TEXT_TYPE
    + COMMA_SEP + COL3_IMEI_CODE + TEXT_TYPE + COMMA_SEP + COL4_REGISTRATION_ID + VARCHAR_TYPE + COMMA_SEP + COL5_MOBILE_NUMBER + TEXT_TYPE + ")";

关于java - Android sqlite语法错误: near ")",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28168726/

相关文章:

mysql - SQL合并连续记录

sql - 从日期范围生成天数

java - Gradle 公司母公司

集群环境中的 Java Batch 作业

java - 当后端更改需要更新的应用程序时如何强制更新应用程序

android - RealmResults 与 RealmList 之间的区别?

c# - Unity currentActivity 在场景变化时会变化吗?

java - 使用 Google Cloud SQL 进行 Spring 启动

java - 如何从 Ant 构建文件设置 Eclipse 构建路径和类路径?

java - 限制嵌入式 Jetty 中的上传大小