Samenvatting :in deze tutorial leer je verschillende manieren om tabellen uit een SQLite-database weer te geven met behulp van het SQLite-opdrachtregelprogramma of door gegevens op te vragen van sqlite_master
tabellen.
Tabellen tonen met behulp van het sqlite-opdrachtregel-shell-programma
Om tabellen in een database weer te geven met behulp van het sqlite-opdrachtregel-shellprogramma, volgt u deze stappen:
Open eerst de database waarvan u de tabellen wilt weergeven:
sqlite3 c:\sqlite\db\chinook.db
Code language: SQL (Structured Query Language) (sql)
De bovenstaande verklaring opende de database met de naam chinook.db
die zich in de c:\sqlite\db
. bevindt directory.
Typ vervolgens de .tables
commando:
tables
Code language: SQL (Structured Query Language) (sql)
De .tables
commando geeft een overzicht van alle tabellen in de chinook
database
albums employees invoices playlists
artists genres media_types tracks
customers invoice_items playlist_track
Code language: SQL (Structured Query Language) (sql)
Merk op dat beide .tables
, .table
hetzelfde effect hebben. Daarnaast is het commando .ta
zou ook moeten werken.
De .tables
commando kan ook worden gebruikt om tijdelijke tabellen weer te geven. Zie het volgende voorbeeld:
Maak eerst een nieuwe tijdelijke tabel met de naam temp_table1
:
CREATE TEMPORARY TABLE temp_table1( name TEXT );
Code language: SQL (Structured Query Language) (sql)
Ten tweede, maak een lijst van alle tabellen uit de database:
.tables
Code language: SQL (Structured Query Language) (sql)
Het volgende toont de uitvoer:
albums employees invoices playlists
artists genres media_types temp.temp_table1
customers invoice_items playlist_track tracks
Code language: SQL (Structured Query Language) (sql)
Omdat het schema van tijdelijke tabellen temp
. is , de opdracht toonde de namen van het schema en de tabel van de tijdelijke tabel, zoals temp.temp_table1
.
Als u tabellen met de specifieke naam wilt weergeven, kunt u een bijpassend patroon toevoegen:
.tables pattern
Code language: SQL (Structured Query Language) (sql)
De opdracht werkt hetzelfde als LIKE
exploitant. Het patroon moet tussen enkele aanhalingstekens staan ( '
).
Om bijvoorbeeld tabellen te vinden waarvan de naam begint met de letter 'a', gebruikt u de volgende opdracht:
.table 'a%'
Code language: SQL (Structured Query Language) (sql)
Hier is de uitvoer:
albums artists
Code language: plaintext (plaintext)
To toont de tabellen waarvan de naam de tekenreeks ck
bevat , gebruik je de %ck%
patroon zoals getoond in de volgende opdracht:
.tables '%ck%'
Code language: SQL (Structured Query Language) (sql)
De uitvoer is als volgt:
playlist_track tracks
Code language: SQL (Structured Query Language) (sql)
Tabellen tonen met SQL-instructie
Een andere manier om alle tabellen in een database weer te geven, is door ze op te vragen vanuit het sqlite_schema
tafel.
SELECT
name
FROM
sqlite_schema
WHERE
type ='table' AND
name NOT LIKE 'sqlite_%';
Code language: SQL (Structured Query Language) (sql)
Hier is de uitvoer:
In deze zoekopdracht hebben we alle tabellen uitgefilterd waarvan de namen beginnen met sqlite_
zoals sqlite_stat1
en sqlite_sequence
tafels. Deze tabellen zijn de systeemtabellen die intern door SQLite worden beheerd.
Merk op dat SQLite de tabel sqlite_master
heeft gewijzigd naar sqlite_schema
.
In deze zelfstudie hebt u geleerd hoe u alle tabellen in een database kunt weergeven met behulp van de .tables
commando of door gegevens op te vragen uit het sqlite_schema
tafel.