SQLite语法 CREATE INDEX

来源:互联网 发布:酒心巧克力 知乎 编辑:程序博客网 时间:2024/04/29 16:00

SQLite的SQL语法

[目录]

CREATE INDEX

sql-statement ::= CREATE [UNIQUE] INDEX [IF NOT EXISTS] [database-name .] index-name
ON
table-name ( column-name [, column-name]* ) column-name ::= name [ COLLATE collation-name] [ ASC | DESC ]

CREATE INDEX命令由"CREATE INDEX"关键字后跟新索引的名字,关键字"ON",待索引表的名字,以及括弧内的用于索引键的字段列表构成。每个字段名可以跟随"ASC"或"DESC"关键字说明排序法则,但在当前版本中排序法则被忽略。排序总是按照上升序。

每个字段名后跟COLLATE子句定义文本记录的比较顺序。缺省的比较顺序是由CREATE TABLE语句说明的比较顺序。 若不定义比较顺序,则使用内建的二进制比较顺序。

附加到单个表上的索引数目没有限制,索引中的字段数也没有限制。

若UNIQUE关键字出现在CREATE和INDEX之间,则不允许重名的索引记录。试图插入重名记录将会导致错误。

每条CREATE INDEX语句的文本储存于sqlite_mastersqlite_temp_master表中,取决于被索引的表是否临时表。 每次打开数据库时,所有的CREATE INDEX语句从sqlite_master表中读出,产生SQLite的索引样式的内部结构。

若使用可选的IF NOT EXISTS子句,且存在同名索引,则该命令无效。

使用DROP INDEX命令删除索引。

 
原创粉丝点击