使用 Python sqlite3 API 的表列表、数据库模式、转储等

2021-11-15 00:00:00 python api dump sqlite

出于某种原因,我找不到获得 sqlite 交互式 shell 命令等价物的方法:

For some reason I can't find a way to get the equivalents of sqlite's interactive shell commands:

.tables
.dump

使用 Python sqlite3 API.

using the Python sqlite3 API.

有这样的吗?

推荐答案

您可以通过查询 SQLITE_MASTER 表来获取表列表和模式:

You can fetch the list of tables and schemata by querying the SQLITE_MASTER table:

sqlite> .tab
job         snmptarget  t1          t2          t3        
sqlite> select name from sqlite_master where type = 'table';
job
t1
t2
snmptarget
t3

sqlite> .schema job
CREATE TABLE job (
    id INTEGER PRIMARY KEY,
    data VARCHAR
);
sqlite> select sql from sqlite_master where type = 'table' and name = 'job';
CREATE TABLE job (
    id INTEGER PRIMARY KEY,
    data VARCHAR
)

相关文章