我知道这是一个非常基本的问题,但出于某种原因,我无法克服这一错误。我试图在数据库(名为'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文档以及网络,但找不到有助于我的信息。
答案 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。