我有一个 .sqlite 数据库,它只包含一个表。该表包含三列,我只对索引一列感兴趣。
问题是,当我执行索引时,我得到了一个空索引表!
我正在使用SQLite Manager
Firefox 的附加组件。这是在我确认索引之前出现的语法:
CREATE INDEX "main"."tableIndex" ON "table" ("column1" ASC)
我不知道这里有什么问题。我很久以前就用另一个数据库尝试过这个工具,它工作正常。
有什么建议吗?
我有一个 .sqlite 数据库,它只包含一个表。该表包含三列,我只对索引一列感兴趣。
问题是,当我执行索引时,我得到了一个空索引表!
我正在使用SQLite Manager
Firefox 的附加组件。这是在我确认索引之前出现的语法:
CREATE INDEX "main"."tableIndex" ON "table" ("column1" ASC)
我不知道这里有什么问题。我很久以前就用另一个数据库尝试过这个工具,它工作正常。
有什么建议吗?
您无法“看到”数据库索引的内容。不会创建与索引对应的表或类似表的结构。所以没有什么可以看的,可能是空的。
如果 CREATE INDEX 命令运行没有错误,您可以确信索引已创建,并且在您添加、删除和更新数据时将继续由 SQLite 维护。
根据下面的评论,@iturki 实际上正在尝试为全文搜索建立索引。SQLite 支持多个全文搜索扩展,但它们不是通过标准 CREATE INDEX 命令实现的。请参阅此参考。
尝试使用VACUUM查询。它将完全重建 sqlite 数据库文件,并将重建所有索引并重置所有 ROWID 等。