Egzamin SBD wieczorowe. Rok akademicki 2002/2003 1) W Visio właściwość liczebności (Cardinality) określa: czy związek jest opcjonalny czy związek jest identyfikujący ile egzemplarzy encji po stronie jeden może być powiązane z egzemplarzem encji po stronie wiele ile egzemplarzy encji po stronie wiele może być powiązane z egzemplarzem encji po stronie jeden 2) Które z poniższych poleceń definiują więzy spójności: CHECK UNIQUE REFERENCES nazwa_tabeli PRIMARY KEY 3) Tabele PRACOWNIK i DZIAŁ , ( i relacja zatrudniony jeśli wiadomo, że pracownik może być zatrudniony tylko w jednym dziale) połączone są relacją wiele - jeden wiele- wiele jeden - wiele wymagającą dodatkowej tabeli łączącej 4) Jesli w zapytaniu występuje klauzula GROUP BY, wówczas po SELECT może być: stała funkcja sumaryczna dowolna kolumna wyrażenie z funkcją sumaryczną 5) Które z poleceń służy do definiowania części publicznej pakietu: CREATE OR REPLACE PACKAGE nazwa_pakietu AS END nazwa_pakietu CREATE OR REPLACE PACKET BODY nazwa_pakietu AS END nazwa_pakietu CREATE OR REPLACE PACKAGE BODY nazwa_pakietu AS END nazwa_pakietu CREATE OR REPLACE PACKET nazwa_pakietu AS END nazwa_pakietu 6) Które z poleceń służy do wycofania transakcji: ROLLBACK BACK OFF RESIGN CALL OF 7) W przypadku predykatów IN i NOT IN podzapytanie może zwracać: dwie wartości minimalnie dwie wartości listę wartości jedną wartość 8) Które sformułowania są prawdziwe dla związku identyfikującego w Visio: jest oznaczany strzałką zwróconą w stronę "jeden" klucz obcy nie wchodzi w skład klucza głównego encji po stronie wiele klucz obcy wchodzi w skład klucza głównego encji po stronie wiele jest oznaczany strzałką zwróconą w stronę "wiele" 9) Wskazać poprawne zapytanie SQL znajdujące stanowiska pracy występujące zarówno w dziale 10 jak i w dziale 20: SELECT DISTINCT job FROM emp WHERE deptno = 10 OR deptno = 20; SELECT DISTINCT job FROM emp WHERE deptno = 10 INTERSECT SELECT DISTINCT job FROM emp WHERE deptno = 20; SELECT DISTINCT job FROM emp WHERE deptno = 10 UNION SELECT DISTINCT job FROM emp WHERE deptno = 20; SELECT DISTINCT job FROM emp WHERE deptno = 10 AND deptno = 20; 10) Zdjęcie blokady następuje przez: wykonanie polecenia wycofującego transakcję wpisanie polecenia UNLOCK TABLE nzawa_tabel wpisanie polecenia LOCK OFF wykonanie polecenia zatwierdzającego transakcję 11) Które mechanizmy są używane do zapewnienia spójności bazy danych w środowisku współbieżnie wykonywanych transakcji: perspektywy blokady wielowersyjność role 12) Dana jest tabela Osoby(Imie, Nazwisko, Zarobki). Które z następujących instrukcji są składniowo poprawnymi instrukcjami SQL w Oracle: INSERT INTO Osoby SELECT * FROM Osoby WHERE USER = ''KOWALSKI''; DELETE FROM Osoby WHERE USER=''KOWALSKI''; SELECT Osoby.Nazwisko, Osoby.Imie, Osoby.Zarobki ORDER BY Osoby.Zarobki; UPDATE Osoby WHERE Nazwisko=''KOWALSKI''; 13) Z ilu tabel powinna się składać prosta znormalizowana baza zawierająca informacje o piętrach, pokojach i przynależności "jeden do wielu" między nimi: 1 4 2 3 14) Schemat klasy w języku ODL obejmuje: metody tabele związki atrybuty 15) Które akcje referencyjne są dostępne w Oracle: DEFAULT NULLIFY CASCADE RESTRICTED 16) Czy istniejący indeks przyśpiesza wykonanie instrukcji UPDATE: zawsze nigdy czasem zakładanie indeksów nie jest możliwe 17) Sortowanie za pomocą B+-drzewa jest lepsze niż sortowanie zewnętrzne, gdy indeks jest: rzadki gęsty pogrupowany wewnętrzny 18) W związku ze współbieżnym wykonywaniem transakcji mogą się pojawić anomalie: nadpisania niezatwierdzonych danych wstawiania usuwania aktualizacji 19) Wskazać poprawne zapytanie SQL znajdujące departamenty zatrudniające powyżej trzech pracowników: SELECT deptno, COUNT(*) FROM emp GROUP BY deptno HAVING COUNT(*) > 3; SELECT deptno, COUNT(*) FROM emp WHERE COUNT (*) > 3 GROUP BY deptno; SELECT deptno, COUNT(*) FROM emp GROUP BY deptno WHERE COUNT(*) > 3; SELECT deptno, COUNT(*) FROM emp HAVING COUNT (*) > 3 GROUP BY deptno; 20) Instrukcja CREATE SCHEMA tworzy: bazę danych grupę uprawnień grupę obiektów konta użytkowników