1
sqlite> create table foo(x TEXT PRIMARY KEY, y TEXT UNIQUE);
sqlite> select * from sqlite_master;
table|foo|foo|2|CREATE TABLE foo(x TEXT PRIMARY KEY, y TEXT UNIQUE)
index|sqlite_autoindex_foo_1|foo|3|
index|sqlite_autoindex_foo_2|foo|4|
对于用户定义的索引,最后一列sqlite_master
告诉我它们在哪些列上。但是,正如您所看到的,对于由(非rowid)PRIMARY KEY
和UNIQUE
隐式创建的索引,此信息不存在。有没有一种可靠的方法可以告诉我哪个autoindex
是哪个?有没有办法告诉SQLite内部索引在哪些列上?