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

Equivalente SQLite SHOW TABLES


SQLite não tem um SHOW TABLES declaração como MySQL e MariaDB têm, mas tem um comando semelhante.

No SQLite, você pode usar o .tables comando para mostrar uma lista de tabelas. Você também pode usar a table_list pragma para fazer o trabalho.

Os .tables Comando


No SQLite, o .tables O comando é provavelmente a coisa mais próxima do MySQL e do SHOW TABLES do MySQL e do MariaDB demonstração. Aqui está um exemplo:
.tables

Resultado:
Customers  Employees  Students   Teachers

Aqui, quatro tabelas são retornadas.

Os .tables comando consulta o sqlite_schema tabela para todos os bancos de dados anexados. Ele retorna tabelas e visualizações. Se você deseja excluir visualizações, pode consultar o sqlite_schema mesa diretamente. Consulte 2 maneiras de listar as tabelas em um banco de dados SQLite para obter um exemplo disso.

Ou se as tabelas e/ou visualizações tiverem uma convenção de nomenclatura consistente (como um prefixo), você poderá incluí-las/excluí-las anexando um padrão após o .tables papel.

Aqui está um exemplo com um padrão:
.tables t%

Resultado:
Teachers

Nesse caso, usei t% como o padrão, que resultou em todas as tabelas que começam com a letra t ser devolvido.

A table_list Pragma


Outro potencial SHOW TABLES equivalente em SQLite é o table_list pragma:
PRAGMA table_list;

Resultado:
schema  name                type   ncol  wr  strict
------  ------------------  -----  ----  --  ------
main    Customers           table  2     0   0     
main    Employees           table  2     0   0     
main    Students            table  2     0   0     
main    Teachers            table  2     0   0     
main    sqlite_schema       table  5     0   0     
temp    sqlite_temp_schema  table  5     0   0     

Isso retorna mais informações sobre cada tabela do que .tables comando. Você também pode reduzi-lo a apenas um determinado banco de dados ou até mesmo um nome de tabela.

Aqui está um exemplo de especificação do banco de dados:
PRAGMA main.table_list;

Resultado:
schema  name           type   ncol  wr  strict
------  -------------  -----  ----  --  ------
main    Customers      table  2     0   0     
main    Employees      table  2     0   0     
main    Students       table  2     0   0     
main    Teachers       table  2     0   0     
main    sqlite_schema  table  5     0   0     

E uma tabela dada:
PRAGMA main.table_list(Customers);

Resultado:
schema  name       type   ncol  wr  strict
------  ---------  -----  ----  --  ------
main    Customers  table  2     0   0