用Python在SQLite数据库中显示表

时间:2015-08-13 11:08:34

标签: python mysql sqlite

我知道这是一个非常基本的问题,但出于某种原因,我无法克服这一错误。我试图在数据库(名为'GData.db')中将表的所有名称显示/放入Python中的变量available_tables。目前我有以下内容:

con = sql.connect(r'/Users/linnk/Desktop/Results/GData.db')
cur = con.cursor() 
cur.execute("SHOW TABLES IN GData")
available_table=(cursor.fetchall())

这为第二行提供了以下错误:

OperationalError: near "SHOW": syntax error

我查看了SHOW TABLES文档以及网络,但找不到有助于我的信息。

1 个答案:

答案 0 :(得分:4)

查询Sqlite数据库中的表:

SELECT name FROM sqlite_master
WHERE type='table'
ORDER BY name;

所以你的代码段变成:

con = sql.connect(r'/Users/linnk/Desktop/Results/GData.db')
mycur = con.cursor() 
mycur.execute("SELECT name FROM sqlite_master WHERE type='table' ORDER BY name;")
available_table=(mycur.fetchall())

有关详细信息,请参阅Sqlite FAQ