V SQLite se můžeme dotazovat na sqlite_schema tabulky, abyste zjistili, zda daná tabulka existuje.
Před verzí SQLite 3.33.0 byla tato tabulka označována jako sqlite_master (může být stále takto označován v následujících vydáních kvůli zpětné kompatibilitě).
Příklad
Zde je příklad k demonstraci:
SELECT EXISTS (
SELECT
name
FROM
sqlite_schema
WHERE
type='table' AND
name='Customers'
); Výsledek:
1
V tomto případě tabulka existuje a 1 je vráceno.
Zde je příklad toho, co se stane, když tabulka neexistuje:
SELECT EXISTS (
SELECT
name
FROM
sqlite_schema
WHERE
type='table' AND
name='Inventory'
); Výsledek:
0
sqlite_master Tabulka
Stejný dotaz lze spustit pomocí sqlite_master místo sqlite_schema :
SELECT EXISTS (
SELECT
name
FROM
sqlite_master
WHERE
type='table' AND
name='Customers'
); Výsledek:
1
Můžete také použít sqlite_temp_schema nebo sqlite_temp_master , ale tyto fungují pouze pro TEMP databáze přidružená ke každému připojení databáze.