I SQLite er table_list
pragma returnerer information om tabellerne og visningerne i skemaet.
Det blev først introduceret i SQLite version 3.37.0 (frigivet 2021-11-27).
Syntaks
table_list
pragma kan bruges på en af følgende måder:
PRAGMA table_list;
PRAGMA schema.table_list;
PRAGMA table_list(table-name);
Hvor schema
er navnet på et specifikt skema, som du gerne vil have vist tabellerne og visningerne for.
Og hvor table-name
er navnet på specifikke tabeller eller visninger, som du gerne vil angive.
Eksempel
PRAGMA table_list;
Resultat:
skemanavntype ncol wr strict------ ------------------ ----- ---- -- ------ main sqlite_schema table 5 0 0 temp sqlite_temp_schema table 5 0 0 Butiksordrer tabel 2 0 1 Butikskunder tabel 4 1 1 Butiksprodukter tabel 3 0 0 Butikstyper tabel 3 0 0 Butik Hunde tabel 3 0 0 Butik Katte tabel 3 0 0 Butik vProducts se 3 0 0 Butik sqlite_schema tabel 5 0 0 Kæledyr Event tabel 4 0 0 Kæledyr Kæledyr tabel 3 0 0 Kæledyr Typer tabel 2 0 0 Kæledyr Katte tabel 2 0 0 Kæledyr Hunde tabel 2 0 0 Kæledyr sqlite_schema tabel 5 0 0
Vi kan se, at tabel- og visningsnavnene er angivet i name
kolonne. Vi kan også se, om det er en tabel eller visning ved at se på type
kolonne. Og selvfølgelig er skemanavnet angivet i schema
kolonne.
ncol
kolonne indeholder antallet af kolonner i tabellen, inklusive genererede kolonner og skjulte kolonner.
wr
kolonne angiver, om tabellen er blevet defineret med WITHOUT ROWID
mulighed. I vores eksempel kan vi se, at Customers
tabel er blevet defineret med WITHOUT ROWID
.
strict
kolonne angiver, om tabellen er blevet defineret med STRICT
mulighed. Denne mulighed blev introduceret i SQLite version 3.37.0 (samme version som table_list
pragma blev introduceret). I vores eksempel kan vi se, at Customers
og Orders
tabeller er blevet defineret med STRICT
mulighed.
Få alle tabeller i en specifik database
Vi kan inkludere skemanavnet for kun at returnere tabellerne og visningerne i en given database:
PRAGMA Store.table_list;
Resultat:
skemanavn type ncol wr strict------ ------------ ----- ---- -- ------Butiksordrer tabel 2 0 1 Butikskunder tabel 4 1 1 Butiksprodukter tabel 3 0 0 Butikstyper tabel 3 0 0 Butik Hunde tabel 3 0 0 Butik Katte tabel 3 0 0 Butik vProducts view 3 0 0 Butik sqlite_schema tabel 5 0 0
Få tabeller efter navn
Vi kan give tabellen/visningsnavnet for at returnere alle tabeller/visninger med det navn på tværs af alle databaser:
PRAGMA table_list('Dogs');
Resultat:
skemanavn type ncol wr strict------ ---- ----- ---- -- ------Butik Hunde bord 3 0 0 Kæledyr Hunde bord 2 0 0I dette tilfælde kan vi se, at både
Store
ogPets
skemaer har en tabel kaldetDogs
.