V SQLite, table_list
pragma vrací informace o tabulkách a pohledech ve schématu.
Poprvé byl představen ve verzi SQLite 3.37.0 (vydáno 27. 11. 2021).
Syntaxe
table_list
pragma lze použít kterýmkoli z následujících způsobů:
PRAGMA table_list;
PRAGMA schema.table_list;
PRAGMA table_list(table-name);
Kde schema
je název konkrétního schématu, pro které chcete vypsat seznam tabulek a zobrazení.
A kde table-name
je název konkrétních tabulek nebo zobrazení, které chcete uvést.
Příklad
PRAGMA table_list;
Výsledek:
typ názvu schématu ncol wr strict------ ------------------ ----- ---- -- ------ main sqlite_schema table 5 0 0 temp tabulka sqlite_temp_schema 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 zobrazit 3 0 0 Obchod tabulka sqlite_schema 5 0 0 Domácí mazlíčci Tabulka událostí 4 0 0 Domácí mazlíčci Tabulka mazlíčků 3 0 0 Tabulka typů mazlíčků 2 0 0 Domácí mazlíčci Tabulka koček 2 0 0 Domácí mazlíčci Tabulka psů 2 0 0 Domácí mazlíčci tabulka sqlite_schema 5 0 0
Vidíme, že názvy tabulek a pohledů jsou uvedeny v name
sloupec. Můžeme také zjistit, zda se jedná o tabulku nebo pohled, když se podíváme na type
sloupec. A samozřejmě název schématu je uveden v schema
sloupec.
ncol
sloupec obsahuje počet sloupců v tabulce, včetně vygenerovaných sloupců a skrytých sloupců.
wr
udává, zda byla tabulka definována pomocí WITHOUT ROWID
volba. V našem příkladu vidíme, že Customers
tabulka byla definována pomocí WITHOUT ROWID
.
strict
udává, zda byla tabulka definována pomocí STRICT
volba. Tato možnost byla zavedena v SQLite verze 3.37.0 (stejná verze jako table_list
bylo zavedeno pragma). V našem příkladu vidíme, že Customers
a Orders
tabulky byly definovány pomocí STRICT
možnost.
Získejte všechny tabulky v konkrétní databázi
Můžeme zahrnout název schématu, abychom vrátili pouze tabulky a pohledy v dané databázi:
PRAGMA Store.table_list;
Výsledek:
název schématu typ ncol wr strict------ ------------- ----- ---- -- ------ Tabulka objednávek obchodu 2 0 1 Tabulka zákazníků prodejny 4 1 1 Prodejna Tabulka produktů 3 0 0 Tabulka typů prodejen 3 0 0 Tabulka Prodejna Psi 3 0 0 Tabulka Prodejna Kočky 3 0 0 Prodejna vZobrazení produktů 3 0 0 Prodejna tabulka sqlite_schema 5 0 0
Získat tabulky podle názvu
Můžeme poskytnout název tabulky/pohledu, abychom vrátili všechny tabulky/pohledy s tímto názvem ve všech databázích:
PRAGMA table_list('Dogs');
Výsledek:
typ názvu schématu ncol wr strict------ ---- ----- ---- -- ------Tabulka Store Dogs 3 0 0 Pets Psi tabulka 2 0 0V tomto případě vidíme, že jak
Store
aPets
schémata mají tabulku nazvanouDogs
.