跳到主要内容

列出表

SHOW TABLES 命令可用于获取当前选中 schema 下所有表的列表。

CREATE TABLE tbl (i INTEGER);
SHOW TABLES;
name
tbl

SHOWSHOW ALL TABLES 可用于获取所有已附加数据库与 schema 中的全部表列表。

CREATE TABLE tbl (i INTEGER);
CREATE SCHEMA s1;
CREATE TABLE s1.tbl (v VARCHAR);
SHOW ALL TABLES;
databaseschematable_namecolumn_namescolumn_typestemporary
memorymaintbl[i][INTEGER]false
memorys1tbl[v][VARCHAR]false

SHOW TABLES FROM db 可用于列出指定数据库或 schema 中的全部表。

ATTACH 'db.db';
CREATE TABLE db.main_tbl (u VARCHAR);
CREATE SCHEMA db.s1;
CREATE TABLE db.s1.schema_tbl (v VARCHAR);
SHOW TABLES FROM db;
name
main_tbl
schema_tbl

也可以指定某个 schema。

SHOW TABLES FROM db.s1;
name
schema_tbl

要查看单个表的 schema,请使用 DESCRIBE 命令

另见

同样也定义了 SQL 标准的 information_schema 视图。此外,Goose 还定义了 sqlite_master 以及大量 PostgreSQL 系统目录表,分别用于兼容 SQLite 与 PostgreSQL。