wtorek, 9 listopada 2010

Kurs Oracle SQL. Słowniki systemowe


Oracle udostępnia słownik systemowy zawierający informacje o wszystkich obiektach w bazie danych. Na słownik ten nałożone są widoki które wyświetlają różne informacje w zależności od uprawnień użytkownika który z nich korzysta. Warto o nich pamiętać w sytuacjach, ponieważ niejednokrotnie pojawia się konieczność sprawdzenia do jakich obiektów użytkownik ma uprawnienia, lub których jest właścicielem.
Najczęściej używane widoki to:
user_tables – tabele których użytkownik jest właścicielem
user_views – widoki których użytkownik jest właścicielem
user_constraints – konstrainty których użytkownik jest właścicielem
all_tables – tabele których użytkownik jest właścicielem lub ma jakiekolwiek prawa
all_views – widoki których użytkownik jest właścicielem lub ma jakiekolwiek prawa
all_contraints – konstrainty których użytkownik jest właścicielem lub ma jakiekolwiek prawa


Możemy je odczytywać tak jak zwykłe widoki:



Dzięki słownikowi systemowemu możemy na przykład sprawdzić jakie są nałożone konstrainty na daną tabelę:




 
Zasadniczo nazwy słowników są dość intuicyjne, można np. domyśleć się że wszystkie synonimy użytkownika znajdują się w widoku user_synonyms. Na wypadek gdybyśmy jednak nie mogli dojść do tego jak się nazywa dany słownik, albo po prostu chcieli zobaczyć jakie słowniki są dostępne, możemy skorzystać ze słownika słowników „DICTIONARY” zawierającego te informacje:




1 komentarz: