【问题标题】:Android SQLite can a tables name be 'TABLE'Android SQLite 表名可以是“TABLE”吗
【发布时间】:2015-06-19 01:07:20
【问题描述】:

我正在为 SQLite 使用GreenDAO ORM,我面临的问题是我有一个名为 TABLE 的表,我使用以下命令创建表:

db.execSQL("CREATE TABLE 'TABLE' (" + //
                "'_id' INTEGER PRIMARY KEY ," + // 0: id
                "'TYPE' INTEGER NOT NULL ," + // 1: Type
                "'NAME' TEXT NOT NULL ," + // 2: Name
                "'NUMBER' INTEGER NOT NULL ," + // 3: Number
                "'CHAIRS' INTEGER NOT NULL ," + // 4: Chairs
                "'NOTE' TEXT NOT NULL ," + // 5: Note
                "'PRIORITY' INTEGER NOT NULL ," + // 6: Priority
                "'STATUS' INTEGER NOT NULL ," + // 7: Status
                "'ID_RELATED_RECORD' INTEGER NOT NULL ," + // 8: idRelatedRecord
                "'REGISTERED_ON' INTEGER NOT NULL ," + // 9: RegisteredOn
                "'REGISTERED_BY' TEXT NOT NULL ," + // 10: RegisteredBy
                "'ID_TICKET_CATEGORY' INTEGER NOT NULL ," + // 11: idTicketCategory
                "'ID_SEAT_MAP' INTEGER NOT NULL );"); // 12: idSeatMap

这通过创建表格以应有的方式工作,但是当我尝试通过以下方式选择所有数据时:

daoSession.getTableDao().queryBuilder().list();

这会抛出这个异常:

android.database.sqlite.SQLiteException: near "TABLE": syntax error 
(code 1): , while compiling: 
SELECT T.'_id', T.'TYPE',T.'NAME', T.'NUMBER',T.'CHAIRS', T.'NOTE', T.'PRIORITY', T.'STATUS', T.'ID_RELATED_RECORD', T.'REGISTERED_ON',T.'REGISTERED_BY', T.'ID_TICKET_CATEGORY', T.'ID_SEAT_MAP' 
FROM TABLE T

我认为问题在于表格名为“TABLE”,但我不太确定?

【问题讨论】:

  • 将表名更改为不是 SQL 关键字和保留字的名称。虽然你可以让它工作,但它不值得。为表格起一个更具描述性的名称。
  • 这个答案可能会有所帮助:stackoverflow.com/a/23446378/3766946 看看。
  • 现在我将表名更改为 GUEST_TABLE 并且没有什么工作不有趣!

标签: android sql android-sqlite greendao


【解决方案1】:

不,你不能命名一个表 TABLE,它是一个关键字。

sqlite中的关键字列表:https://www.sqlite.org/lang_keywords.html

【讨论】:

    【解决方案2】:

    尝试使用这个昏迷:``,而不是这个:''

    【讨论】:

      猜你喜欢
      • 2015-12-02
      • 2012-02-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-12
      相关资源
      最近更新 更多