Rendszerkatalógusok
A kapcsolódó gyakorlati feladatok megoldásai elérhetőek a GitHub repo-ban.
Az adatbázis-kezelő rendszerek számos olyan táblát és nézetet tartalmaznak, melyek az adatbázis különböző elemiről tartalmaznak adatokat. Ezeket az Oracle adatbázis-kezelő rendszerben rendszerkatalógusoknak (illetve adatszótár nézeteknek) nevezzük.
A rendszerkatalógusok nevei jellemzően két tagból állnak: egy láthatósági halmaz prefixumból (az első aláhúzásjelig tart) és az adatszótár nevéből.
Láthatósági halmazok
| Lekérdezheti | Tartalma | |
|---|---|---|
| USER | Bárki | Felhasználó tulajdonai |
| ALL | Bárki | Amit a felhasználónak joga van megtekinteni |
| DBA | Adatbázis adminisztrátor (DBA) | Minden |
Objektumtípusok
Az adatbázis szinte összes eleméhez létezik rendszerkatalógus. Ezek felsorolása értelmetlen lenne ezért kezdetben csak az egyik legfontosabb katalógussal (és annak speciális változataival) fogunk megismerkedni.
Ez az OBJECTS, mely az adatbázisban szereplő objektumokról tárol általános információkat.
Az összes adatbázisban található objektumot, például a DBA_OBJECTS katalóguson keresztül érhetjük el.
| Column Name | Data Type | Nullable | Description |
|---|---|---|---|
| OWNER | VARCHAR2(30) | NOT NULL | Owner of the object |
| OBJECT_NAME | VARCHAR2(30) | NOT NULL | Name of the object |
| SUBOBJECT_NAME | VARCHAR2(30) | Name of the sub object (for example, partition) | |
| OBJECT_ID | NUMBER | NOT NULL | Dictionary object number of the object |
| DATA_OBJECT_ID | NUMBER | Dictionary object number of the segment that contains the object | |
| OBJECT_TYPE | VARCHAR2(19) | Type of the object (such as TABLE, INDEX) | |
| CREATED | DATE | NOT NULL | Timestamp for the creation of the object |
| LAST_DDL_TIME | DATE | NOT NULL | Timestamp for the last modification of the object resulting from a DDL statement (including grants and revokes) |
| TIMESTAMP | VARCHAR2(20) | Timestamp for the specification of the object (character data) | |
| STATUS | VARCHAR2(7) | Status of the object (VALID, INVALID, or N/A) | |
| TEMPORARY | VARCHAR2(1) | Whether the object is temporary (the current session can see only data that it placed in this object itself) | |
| GENERATED | VARCHAR2(1) | Indicates whether the name of this object was system generated (Y) or not (N) |
USER láthatóság esetén, mivel egyértelmű a tulajdonos személye, nem szerepel az OWNER oszlop!
Specializált objektum nézetek
A különböző típusú objektumra léteznek specifikus nézetek, (pl USER_VIEWS, ALL_SYNONYMS, DBA_IND_EXPRESSIONS).
A specifikus nézetekben nem szerepel az OBJECT_TYPE oszlop.
TAB_COLS nézet
Különlegesnek tekinthetőek a TAB_COLS adatszótár nézetek, melyek az adatbázisban szereplő táblák sorairól tárolnak
információkat.
A nézet legfontosabb oszlopai:
| Oszlop Neve | Leírás |
|---|---|
| OWNER | Tulajdonos a táblának, nézetnek vagy csoportnak |
| TABLE_NAME | A tábla, nézet vagy csoport neve |
| COLUMN_NAME | Oszlop neve |
| DATA_TYPE | Az oszlop adattípusa |
Rendszerkatalógusok kapcsolatai
A következő grafikon a különböző rendszerkatalógusok közti kapcsolatokat (és az ezek kialakításához szükséges összekapcsolások feltételeit) mutatja: