Resumo : neste tutorial, você aprenderá várias maneiras de mostrar tabelas de um banco de dados SQLite usando o programa shell de linha de comando SQLite ou consultando dados de sqlite_master
tabelas.
Mostrando tabelas usando o programa shell de linha de comando sqlite
Para mostrar tabelas em um banco de dados usando o programa shell de linha de comando sqlite, siga estas etapas:
Primeiro, abra o banco de dados onde deseja mostrar as tabelas:
sqlite3 c:\sqlite\db\chinook.db
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
A instrução acima abriu o banco de dados nomeado chinook.db
que está localizado no c:\sqlite\db
diretório.
Segundo, digite o .tables
comando:
tables
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
O .tables
comando lista todas as tabelas do chinook
banco de dados
albums employees invoices playlists
artists genres media_types tracks
customers invoice_items playlist_track
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Observe que ambos .tables
têm .table
o mesmo efeito. Além disso, o comando .ta
também deve funcionar.
O .tables
comando também pode ser usado para mostrar tabelas temporárias. Veja o exemplo a seguir:
Primeiro, crie uma nova tabela temporária chamada temp_table1
:
CREATE TEMPORARY TABLE temp_table1( name TEXT );
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Segundo, liste todas as tabelas do banco de dados:
.tables
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
O seguinte mostra a saída:
albums employees invoices playlists
artists genres media_types temp.temp_table1
customers invoice_items playlist_track tracks
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Como o esquema das tabelas temporárias é temp
, o comando mostrou os nomes do esquema e da tabela da tabela temporária, como temp.temp_table1
.
Se quiser mostrar tabelas com o nome específico, você pode adicionar um padrão correspondente:
.tables pattern
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
O comando funciona da mesma forma que LIKE
o operador. O padrão deve estar entre aspas simples ( '
).
Por exemplo, para encontrar tabelas cujos nomes começam com a letra ‘a’, use o seguinte comando:
.table 'a%'
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Aqui está a saída:
albums artists
Linguagem de código: texto simples ( texto simples )
Para mostrar as tabelas cujo nome contém a string ck
, você usa o %ck%
padrão mostrado no comando a seguir:
.tables '%ck%'
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
A saída é a seguinte:
playlist_track tracks
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Mostrando tabelas usando instrução SQL
Outra maneira de listar todas as tabelas em um banco de dados é consultá-las na sqlite_schema
tabela.
SELECT
name
FROM
sqlite_schema
WHERE
type ='table' AND
name NOT LIKE 'sqlite_%';
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Aqui está a saída:
Nesta consulta, filtramos todas as tabelas cujos nomes começam com tabelas sqlite_
como sqlite_stat1
e . sqlite_sequence
Essas tabelas são as tabelas do sistema gerenciadas internamente pelo SQLite.
Observe que o SQLite alterou a tabela sqlite_master
para sqlite_schema
.
Neste tutorial, você aprendeu como mostrar todas as tabelas em um banco de dados usando o .tables
comando ou consultando dados da sqlite_schema
tabela.