如何在数据库中创建表本身的索引?

时间:2013-09-08 18:40:01

标签: python sqlite

我正在使用APSW将我的SQL代码包装在python中,如下所示:

connection=apsw.Connection("dbfile"); cursor=connection.cursor()
cursor.execute("create table foo(x,y,z)")
cursor.execute("create table bar(a,b,c)")
cursor.execute("create table baz(one,two,three)")

我计划使用gui框架来显示这些表名(以及随后的列和行)。我还想按照不同的标准对这些表名进行排序。

有没有办法在表本身上创建一个索引来用于排序 - 例如:

cursor.execute("CREATE INDEX index_name ON foo")

提前致谢。

2 个答案:

答案 0 :(得分:1)

带有

的sqlite数据库中的

You can list all the tables

cursor.execute(
    "SELECT tbl_name FROM sqlite_master WHERE type='table'")

table_names = cursor.fetchall()

获得表名后,可以使用字符串格式来形成CREATE INDEX命令。

答案 1 :(得分:0)

除@unutbu答案外,您还有PRAGMA table_info() function

PRAGMA table_info(table-name);

它返回有关各个表的信息。