In Oracle Database zijn er een aantal views die we kunnen opvragen om te achterhalen of een tabel bestaat.
Voorbeeld
Bijvoorbeeld USER_TABLES
beschrijft de relationele tabellen die eigendom zijn van de huidige gebruiker.
SELECT TABLE_NAME
FROM USER_TABLES
WHERE TABLE_NAME = 'COUNTRIES';
Resultaat:
COUNTRIES
In dit voorbeeld heb ik gecontroleerd of er een relationele tabel is met de naam COUNTRIES
die eigendom is van de huidige gebruiker.
We kunnen deze zoekopdracht aanpassen om alleen de telling te retourneren:
SELECT COUNT(TABLE_NAME)
FROM USER_TABLES
WHERE TABLE_NAME = 'COUNTRIES';
Resultaat:
1
In dat geval bestaat de tabelnaam en is de telling dus 1
.
Dit is wat er gebeurt als de tabel niet bestaat:
SELECT COUNT(TABLE_NAME)
FROM USER_TABLES
WHERE TABLE_NAME = 'USERS';
Resultaat:
0
De volgende tabel bevat andere weergaven die informatie bevatten over tabellen in Oracle Database.
Bekijken | Beschrijving |
---|---|
USER_TABLES | Beschrijft de relationele tabellen die eigendom zijn van de huidige gebruiker (deze weergave wordt gebruikt in het bovenstaande voorbeeld). |
ALL_TABLES | Beschrijft de relationele tabellen die toegankelijk zijn voor de huidige gebruiker. |
DBA_TABLES | Beschrijft alle relationele tabellen in de database. |
USER_ALL_TABLES | Beschrijft de objecttabellen en relationele tabellen die eigendom zijn van de huidige gebruiker. |
DBA_ALL_TABLES | Beschrijft alle objecttabellen en relationele tabellen in de database. |
ALL_ALL_TABLES | Beschrijft de objecttabellen en relationele tabellen die toegankelijk zijn voor de huidige gebruiker. |