2010-05-04 124 views
19

我可以在sqlite中的create table命令的列上创建索引吗?在sqlite中创建索引列

我在Android shell的sqlite3下面试过这个命令。它似乎工作。

sqlite> create table mytest (id integer indexed); 
sqlite> .schema 
CREATE TABLE mytest (id integer indexed); 

但是,SQLite中的查询语言规范,指定要索引的列不支持:

http://www.sqlite.org/lang_createtable.html

我错过了什么?

谢谢。需要

回答

49

一个单独的查询:

CREATE INDEX mytest_id_idx ON mytest(id); 

虽然这听起来像你想的id列自动递增的主键?

CREATE TABLE mytest(id INTEGER PRIMARY KEY); 
+2

我只是想测试我是否可以指定一个列在create table命令中被索引。 感谢您的回答。 – user256239 2010-05-04 17:44:53

+8

很高兴看到有人用示例SQL代码而不是气泡图来回答问题。这些图很好,但示例代码更容易理解。不需要在主键上创建显式索引,因为总会为您自动创建索引。 – CashCow 2011-03-01 11:36:51