No SQLite, a
table_list pragma retorna informações sobre as tabelas e exibições no esquema. Foi introduzido pela primeira vez no SQLite versão 3.37.0 (lançado em 27/11/2021).
Sintaxe
A
table_list pragma pode ser usado em qualquer uma das seguintes maneiras:PRAGMA table_list;
PRAGMA schema.table_list;
PRAGMA table_list(table-name); Onde
schema é o nome de um esquema específico para o qual você deseja listar as tabelas e visualizações. E onde
table-name é o nome de tabelas ou visualizações específicas que você gostaria de listar. Exemplo
PRAGMA table_list; Resultado:
tipo de nome de esquema ncol wr strict------ ------------------ ----- ---- -- ------ main sqlite_schema table 5 0 0 temp sqlite_temp_schema table 5 0 0 Store Orders table 2 0 1 Store Customers table 4 1 1 Store Products table 3 0 0 Store Types table 3 0 0 Store Dogs table 3 0 0 Store Cats table 3 0 0 Store vProducts ver 3 0 0 Loja sqlite_schema table 5 0 0 Pets Mesa de eventos 4 0 0 Pets Pets mesa 3 0 0 Pets Types table 2 0 0 Pets Cats table 2 0 0 Pets Dogs table 2 0 0 Pets sqlite_schema table 5 0 0
Podemos ver que os nomes da tabela e da visão estão listados no
name coluna. Também podemos ver se é uma tabela ou visualização observando o type coluna. E, claro, o nome do esquema está listado no schema coluna. O
ncol coluna contém o número de colunas na tabela, incluindo colunas geradas e colunas ocultas. O
wr coluna indica se a tabela foi ou não definida com o WITHOUT ROWID opção. Em nosso exemplo, podemos ver que o Customers tabela foi definida com WITHOUT ROWID . O
strict coluna indica se a tabela foi ou não definida com o STRICT opção. Esta opção foi introduzida no SQLite versão 3.37.0 (a mesma versão que o table_list pragma foi introduzido). No nosso exemplo, podemos ver que os Customers e Orders tabelas foram definidas com o STRICT opção. Obter todas as tabelas em um banco de dados específico
Podemos incluir o nome do esquema para retornar apenas as tabelas e visualizações em um determinado banco de dados:
PRAGMA Store.table_list; Resultado:
tipo de nome de esquema ncol wr strict------ ------------- ----- ---- -- -------Tabela de pedidos de armazenamento 2 0 1 Store Customers table 4 1 1 Store Products table 3 0 0 Store Types table 3 0 0 Store Dogs table 3 0 0 Store Cats table 3 0 0 Store vProducts view 3 0 0 Store sqlite_schema table 5 0 0
Obter tabelas por nome
Podemos fornecer o nome da tabela/exibição para retornar todas as tabelas/exibições com esse nome em todos os bancos de dados:
PRAGMA table_list('Dogs'); Resultado:
schema name type ncol wr strict------ ---- ----- ---- -- ------Store Dogs table 3 0 0 Pets Dogs table 2 0 0
Neste caso podemos ver que tanto aStoreePetsesquemas têm uma tabela chamadaDogs.