【问题标题】:SQLiteException: near /TABLE_NAME/: syntax errorSQLiteException:靠近 /TABLE_NAME/:语法错误
【发布时间】:2012-11-12 13:43:57
【问题描述】:

请帮助我。我收到此错误:

Caused by: android.database.sqlite.SQLiteException: near "values": syntax error: CREATE TABLE values (_id INTEGER PRIMARY KEY AUTOINCREMENT, name text, caption text, lines integer , photo_url text, type text);

这是我尝试创建数据库表的方式:

private static final String TABLE_VALUES_CREATE =
    "CREATE TABLE " + DATABASE_TABLE_VALUES +
           " (_id INTEGER PRIMARY KEY AUTOINCREMENT, "
          + ValueTemplate.KEY_NAME + " text, "
          + ValueTemplate.KEY_CAPTION + " text, "
          + ValueTemplate.KEY_LINES + " integer , "
          + ValueTemplate.KEY_PHOTOURL + " text, "
          + ValueTemplate.KEY_TYPE + " text);";

   //ValueTemplate class:
   // VALUE TEMPLATES

      public static final String KEY_CAPTION = "caption";
      public static final String KEY_NAME = "name";
      public static final String KEY_TYPE = "type";
      public static final String KEY_LINES = "lines";
      public static final String KEY_PHOTOURL = "photo_url";

【问题讨论】:

    标签: android sqlite syntax tablename


    【解决方案1】:

    我认为因为 (values) 是保留名称,请重命名您的表..

    【讨论】:

      【解决方案2】:

      您的表名 (values) 是 SQLite 保留的关键字。

      关键字列表见这里:http://www.sqlite.org/lang_keywords.html

      【讨论】:

        【解决方案3】:

        如果您坚持保持完全相同的表名,请尝试 [values],否则最好将其重命名为 tblValues 之类的名称

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-10-03
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2018-08-02
          • 2016-06-29
          • 1970-01-01
          • 2016-06-18
          相关资源
          最近更新 更多