SQLite语法在临时表上创建索引?

时间:2014-03-10 15:49:09

标签: sqlite indexing

创建表的语法是

CREATE [temp] TABLE TableName(...)

因此可以使用

在临时数据库中创建表
CREATE temp TABLE MyTable(...)

 CREATE TABLE temp.MyTable(...)

并且完全解决了引用该表的方法是

temp.Mytable

这是与main.MyTable不同的表。

但是,创建索引的语法只是

CREATE INDEX IndexName ON TableName (FieldName )

,它不允许表名具有前置数据库名称

所以这没关系

CREATE INDEX MyIndex ON MyTable (MyField)

但这不是

CREATE INDEX MyIndex ON Temp.MyTable (MyField)

如何在临时表上创建索引(特别是如果主数据库中可能存在同名表?

1 个答案:

答案 0 :(得分:5)

必须将数据库名称放在索引名称上:

CREATE INDEX temp.MyIndex ON MyTable(MyField)