SQLite
 sql >> Base de Dados >  >> RDS >> SQLite

PRAGMA table_list no SQLite


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 a Store e Pets esquemas têm uma tabela chamada Dogs .