V databázi Oracle existuje řada pohledů, na které se můžeme dotazovat, abychom zjistili, zda tabulka existuje.
Příklad
Například USER_TABLES popisuje relační tabulky vlastněné aktuálním uživatelem.
SELECT TABLE_NAME
FROM USER_TABLES
WHERE TABLE_NAME = 'COUNTRIES'; Výsledek:
COUNTRIES
V tomto příkladu jsem zkontroloval, zda existuje relační tabulka s názvem COUNTRIES které vlastní aktuální uživatel.
Tento dotaz bychom mohli upravit tak, aby vracel pouze počet:
SELECT COUNT(TABLE_NAME)
FROM USER_TABLES
WHERE TABLE_NAME = 'COUNTRIES'; Výsledek:
1
V takovém případě název tabulky existuje, takže počet je 1 .
Co se stane, když tabulka neexistuje:
SELECT COUNT(TABLE_NAME)
FROM USER_TABLES
WHERE TABLE_NAME = 'USERS'; Výsledek:
0
V následující tabulce jsou uvedeny další pohledy, které obsahují informace o tabulkách v databázi Oracle.
| Zobrazit | Popis |
|---|---|
USER_TABLES | Popisuje relační tabulky vlastněné aktuálním uživatelem (toto zobrazení je použito ve výše uvedeném příkladu). |
ALL_TABLES | Popisuje relační tabulky přístupné aktuálnímu uživateli. |
DBA_TABLES | Popisuje všechny relační tabulky v databázi. |
USER_ALL_TABLES | Popisuje tabulky objektů a relační tabulky vlastněné aktuálním uživatelem. |
DBA_ALL_TABLES | Popisuje všechny tabulky objektů a relační tabulky v databázi. |
ALL_ALL_TABLES | Popisuje tabulky objektů a relační tabulky přístupné aktuálnímu uživateli. |