SQLiteException:near / TABLE_NAME /:语法错误

时间:2012-11-12 13:43:57

标签: android sqlite syntax tablename

请帮帮我。我收到了这个错误:

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);

以下是我尝试创建db table的方法:

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";

3 个答案:

答案 0 :(得分:4)

我认为因为(值)是保留名称,所以重命名你的表..

答案 1 :(得分:2)

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

请点击此处查看关键字列表:http://www.sqlite.org/lang_keywords.html

答案 2 :(得分:2)

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