Nr Opcja Poprawna
1 Instrukcja SELECT służy do:
sprowadzania rekordów z bazy danych +
wstawiania rekordów do bazy danych
usuwania rekordów z bazy danych
aktualizacji rekordów w bazie danych
2 Instrukcja INSERT służy do:
sprowadzania rekordów z bazy danych
wstawiania rekordów do bazy danych +
usuwania rekordów z bazy danych
aktualizacji rekordów w bazie danych
3 Instrukcja DELETE służy do:
sprowadzania rekordów z bazy danych
wstawiania rekordów do bazy danych
usuwania rekordów z bazy danych +
aktualizacji rekordów w bazie danych
4 Instrukcja UPDATE służy do:
sprowadzania rekordów z bazy danych
wstawiania rekordów do bazy danych
usuwania rekordów z bazy danych
aktualizacji rekordów w bazie danych +
5 INDEKS w bazie danych przyśpiesza:
wyszukiwania rekordów w bazie danych +
wstawiania rekordów do bazy danych
usuwania rekordów z bazy danych
autoryzację użytkowników w bazie danych
6 Instrukcja COMMIT służy do:
wycofywania zmian w bazie danych
wstawiania rekordów do bazy danych
zatwierdzania zmian w bazie danych +
aktualizacji rekordów w bazie danych
7 Instrukcja ROLLBACK służy do:
wycofywania zmian w bazie danych +
zatwierdzania zmian w bazie danych
usuwania rekordów z bazy danych
aktualizacji rekordów w bazie danych
8 Instrukcja GRANT służy do:
przyznawania uprawnień w bazie danych +
zatwierdzania zmian w bazie danych
odbierania uprawnień w bazie danych
aktualizacji rekordów w bazie danych
9 Instrukcja REVOKE służy do:
przyznawania uprawnień w bazie danych
zatwierdzania zmian w bazie danych
odbierania uprawnień w bazie danych +
wycofywania zmian w bazie danych
10 Instrukcja ALTER TABLE służy do:
tworzenia tabeli
usuwania tabeli
zmiany schematu tabeli +
aktualizacji indeksów założonych na tabeli
11 Jaka jest wartość wyrażenia Null=Null:
jest nieokreślone
True
False
Null +
12 Jaka jest wartość wyrażenia True OR Null:
jest nieokreślone
True +
False
Null
13 Jaka jest wartość wyrażenia False OR Null:
jest nieokreślone
True
False
Null +
14 Jaka jest wartość wyrażenia False AND Null:
jest nieokreślone
True
False +
Null
15 Jaka jest wartość wyrażenia True AND Null:
jest nieokreślone
True
False
Null +
16 Jaka jest wartość wyrażenia NOT Null:
jest nieokreślone
True
False
Null +
17 Co będzie wynikiem realizacji instrukcji SELECT * FROM Emp WHERE EmpNo=EmpNo OR EmpNo=NULL
relacja Emp +
relacja pusta
instrukcja jest niepoprawna
18 Co będzie wynikiem realizacji instrukcji SELECT * FROM Emp WHERE EmpNo=EmpNo AND NULL=EmpNo
relacja Emp
relacja pusta +
instrukcja jest niepoprawna
19 Relacja R ma atrybut a. Jaka liczba może być wynikiem wykonania instrukcji SELECT Count(*) FROM R WHERE a=a
0
1dowolna liczba całkowita
zawsze tyle jaka jest liczebność relacji R. +
20 Relacja R ma atrybut a. Jaka liczba może być wynikiem wykonania instrukcji SELECT Count(*) FROM R WHERE a
zawsze 0 +
1dowolna liczba całkowita
tyle jaka jest liczebność relacji R.
21 Encji odpowiada w relacyjnej bazie danych:
wiersz w tabeli
kolumna w tabeli
tabela +
klucz obcy
22 Związkowi jednoznacznemu odpowiada w relacyjnej bazie danych:
kolumna w tabeli
klucz obcy +
indeks w tabeli
wartość NULL
23 Związkowi wieloznacznemu odpowiada w relacyjnej bazie danych:
klucz obcy
tabela +
kolumna w tabeli
wiersz w tabeli
24 Atrybutowi w relacyjnej bazie danych odpowiada:
kolumna w tabeli +
wiersz w tabeli
tabela
indeks w tabeli
25 Jednoznacznemu identyfikatorowi odpowiada w relacyjnej bazie danych:
kolumna w tabeli
indeks w tabeli
klucz obcy
klucz główny +
26 Spójność referencyjna dotyczy faktu:
wartością klucza obcego może być null lub wartość odpowiadającego mu klucza głównego +
wartości w kolumnie nie powtarzają się
wartości w kolumnie nie mogą zależeć ani od części klucza ani nawet przechodnio od klucza
w każdej tabeli powinien istnieć dokładnie jeden klucz
27 III postać normalna dotyczy faktu:
wartością klucza obcego może być null lub wartość odpowiadającego mu klucza głównego
wartości w kolumnie nie powtarzają się
wartości w kolumnie niekluczowej nie mogą zależeć ani od części klucza ani nawet przechodnio od klucza +
w każdej tabeli powinien istnieć dokładnie jeden klucz
28 Które ze sformułowań są prawdziwe w modelu relacyjnym:
wartości w kolumnie są przechowywane w kolejności posortowanej
wiersze nie powtarzają się +
kolejność kolumn jest nieistotna +
wartości w kolumnie nie powtarzają się
29 Które ze sformułowań są prawdziwe w modelu relacyjnym:
wiersze nie mają tożsamości obiektowej +
związek jednoznaczny reprezentuje się przy pomocy klucza obcego +
związek wieloznaczny reprezentuje się przy pomocy klucza obcego
klucze obce muszą być typu całkowitego
30 Które ze sformułowań są prawdziwe w modelu relacyjnym:
tabela jest konkretną reprezentacją relacji +
dla klucza jednoznacznego jest automatycznie zakładany indeks +
dla klucza obcego jest automatycznie zakładany indeks
dla klucza głównego jest automatycznie zakładany indeks jednoznaczny +
31 Które ze sformułowań są prawdziwe w modelu relacyjnym:
klucz obcy nie może być częścią klucza główego
klucz główny nie może być częścią klucza obcego +
wartości klucza głównego nie mogą się powtarzać
wartości klucza obcego nie mogą się powtarzać
32 Zależność złączeniowa jest uogólnieniem zależności wielowartościowej w następującym sensie:
dotyczy rozbicia tabeli na dokładnie dwie tabele,
dotyczy rozbicia tabeli na dokładnie trzy tabele,
dotyczy rozbicia tabeli na więcej niż dwie tabele, +
dotyczy rozbicia tabeli na co najmniej dwie tabele,
33 Postać normalna Boyce'a-Codda dotyczy faktu:
wartością klucza obcego może być null lub wartość odpowiadającego mu klucza głównego
każda nietrywialna zależność funkcyjna jest zależnością od nadklucza, +
wartości w kolumnie niekluczowej nie mogą zależeć ani od części klucza ani nawet przechodnio od klucza
w każdej tabeli powinien istnieć dokładnie jeden klucz
34 Które z poniższych stwierdzeń są prawdziwe:
jedyną poprawną, nietrywialną zależnością funkcyjną jest zależność do klucza, +
należy starać się użyć najmniejszej możliwej liczby tabel,
w tabeli nie powinno być żadnych niekontrolowanych redundancji, +
należy wszystkie związki jednoznaczne zastąpić związkami jednojednoznacznymi.
35 Które z poniższych stwierdzeń są prawdziwe:
każdy fakt przechowywany w bazie danych powinien być w niej wyrażany tylko na jeden sposób, +
należy starać się użyć najmniejszej możliwej liczby tabel,
należy skonsultować z użytkownikiem poprawność skonstruowanego modelu danych, +
należy spytać się użytkownika czy schemat tabel jest w III postaci normalnej.
36 Dany jest schemat relacyjny R={Miasto, Ulica, Kod}, F = {Miasto,Ulica->Kod; Kod->Miasto}. W której postaci normalnej jest ten schemat:
I postać normalna; +
II postać normalna, +
III postać normalna, +
postać normalna Boyce'a-Codda.
37 Dany jest schemat relacyjny R={Miasto, Ulica, Kod, Poczta}, F = {Miasto,Ulica->Kod; Kod->Miasto; Kod->Poczta}. W której postaci normalnej jest ten schemat:
I postać normalna; +
II postać normalna,
III postać normalna,
postać normalna Boyce'a-Codda.
38 Dany jest schemat relacyjny R={Miasto, Ulica, Kod, Poczta}, F = {Miasto,Ulica->Kod; Kod->Poczta}. W której postaci normalnej jest ten schemat:
I postać normalna; +
II postać normalna, +
III postać normalna,
postać normalna Boyce'a-Codda.
39 Dany jest schemat relacyjny R={Miasto, Ulica, Kod}, F = {Miasto,Ulica->Kod}. W której postaci normalnej jest ten schemat:
I postać normalna; +
II postać normalna, +
III postać normalna, +
postać normalna Boyce'a-Codda. +
40 Dany jest schemat relacyjny R={Ulica, Kod, Sklep}, F = {Ulica->Kod; Sklep->Ulica}. W której postaci normalnej jest ten schemat:
I postać normalna; +
II postać normalna, +
III postać normalna,
postać normalna Boyce'a-Codda.
41 Dany jest schemat relacyjny R={Ulica, Kod, Sklep}, F = {Ulica->Kod; Ulica, Numer ->Sklep}. W której postaci normalnej jest ten schemat:
I postać normalna; +
II postać normalna,
III postać normalna,
postać normalna Boyce'a-Codda.
42 Dany jest schemat relacyjny R={Student,Adres,Akademik}, F = {Student->Adres; Akademik->Adres; Student->Akademik}. W której postaci normalnej jest ten schemat:
I postać normalna; +
II postać normalna, +
III postać normalna,
postać normalna Boyce'a-Codda.
43 Dany jest schemat relacyjny R={Student,Uczelnia,Adres,Klub}, F = {Student->Uczelnia; Klub->Adres}. W której postaci normalnej jest ten schemat:
I postać normalna; +
II postać normalna,
III postać normalna,
postać normalna Boyce'a-Codda.
44 Dany jest schemat relacyjny R={Student,Uczelnia,Adres,Klub}, F = {Student->Uczelnia; Klub->Adres;Uczelnia->Adres}. W której postaci normalnej jest ten schemat:
I postać normalna; +
II postać normalna,
III postać normalna,
postać normalna Boyce'a-Codda.
45 Dany jest schemat relacyjny R={Student,Uczelnia,Adres,Akademik}, F = {Student, Uczelnia->Klub; Klub->Adres}. W której postaci normalnej jest ten schemat:
I postać normalna; +
II postać normalna, +
III postać normalna,
postać normalna Boyce'a-Codda.
46 Studenci mają pomysły. Każdy pomysł dotyczy pewnej rzeczy. Każdy pomysł przychodzi do głowy dokładnie jednemu studentowi. Student może się podzielić pomysłem z kolegami-studentami. Który ze schematów jest najodpowiedniejszy z punktu widzenia zasad projektowania baz danych:
Studenci(id_studenta, imię, nazwisko, adres, id_pomysłu)
Pomysły(id_pomysłu, rzecz, opis)
Koledzy(id_kolegi, imię, nazwisko, id_studenta, id_pomysłu)
Studenci(id_studenta, imię, nazwisko, adres, id_kolegi)
Pomysły(id_pomysłu, rzecz, opis, id_studenta)
Koledzy(id_kolegi, imię, nazwisko, id_studenta, id_pomysłu)
Studenci(id_studenta, imię, nazwisko, adres)
Pomysły(id_pomysłu, rzecz, opis, id_studenta)
Koledzy(id_pomysłu, id_kolegi)
+
Studenci(id_studenta, imię, nazwisko, adres)
Pomysły(id_pomysłu, rzecz, opis, id_studenta, id_kolegi)
47 Studenci lubią się, są sobie obojętni lub nie znoszą się (nie ma innej możliwości). Który ze schematów jest najodpowiedniejszy z punktu widzenia zasad projektowania baz danych :
Studenci(id_studenta, imię, nazwisko)
Koledzy(id_kolegi, imię, nazwisko, id_studenta, id_stosunku_do)
Stosunek(id_stosunku_do, stosunek_do)
Studenci(id_studenta, imię, nazwisko)
Koledzy(id_kolegi, imię, nazwisko, id_studenta, stosunek_do)
Studenci(id_studenta, imię, nazwisko)
Lubi(id_studenta, id_kolegi)
Nie_znosi(id_studenta, id_kolegi)
Obojętny(id_studenta, id_kolegi)
Studenci(id_studenta, imię, nazwisko)
Lubi(id_studenta, id_kolegi)
Nie_znosi(id_studenta, id_kolegi)
+
48 W domach mieszkają zwierzęta domowe. Niektóre zwierzęta zjadają się wzajemnie. Domy mogą być położone obok siebie. Jaki schemat zgodny z zasadami projektowania schematów baz danych jest najodpowiedniejszy dla organizacji zajmującej się ochroną zwierząt:
Domy(id_domu, adres, id_zwierzę)
Zwierzęta(id_zwierzę, rodzaj, id_zw_zjadane)
Domy(id_domu, adres)
Zwierzęta(id_zwierzę, id_rodzaju, id_domu)
Rodzaje(id_rodzaju, rodzaj)
Obok_siebie(id_domu1, id_domu2)
Zjada(id_rodz_je, id_rodz_zjadane)
+
Domy(id_domu, adres)
Zwierzęta(id_zwierzę, id_rodzaju, id_domu)
Rodzaje(id_rodzaju, rodzaj)
Sąsiedzi(id_zwierzę1, id_zwierzę2)
Zjada(id_rodz_je, id_rodz_zjadane)
Domy(id_domu, adres, id_zwierzę, rodzaj)
Obok_siebie(id_domu1, id_domu2)
Zjada(id_zw_je, id_zw_zjadane)
49 W filmach grają aktorzy. Każdy film ma dokładnie jednego reżysera i jednego lub więcej scenarzystę. Który z poniższych schematów jest najodpowiedniejszy z punktu widzenia zasad projektowania baz danych:
Filmy(id_filmu, tytuł, reżyser, gaża_reżysera)
Aktorzy(id_aktora, nazwisko,rola, id_filmu, gaża)
Scenarzyści(id_scenarzysty, nazwisko, id_filmu, gaża)
Filmy(id_filmu, tytuł, id_reżysera, gaża_reżysera)
Osoby(id_osoby, nazwisko)
Aktorzy(id_aktora, id_filmu, rola, gaża)
Scenarzyści(id_scenarzysty, id_filmu, gaża)
+
Filmy(id_filmu, tytuł, id_reżysera)
Osoby(id_osoby, nazwisko)
Zespół(id_osoby, id_filmu, rola, gaża)
Zespół(tytuł_filmu, nazwisko_osoby, rola, gaża)
50 Politycy należą do partii politycznych (czasami je zmieniają, czasami dokonują ich podziału). Partie polityczne, przed wyborami, tworzą koalicje wyborcze. Który z poniższych schematów jest najodpowiedniejszy z punktu widzenia zasad projektowania baz danych:
Politycy(id_polityka, imię, nazwisko)
Partie(id_partii, nazwa, od, do)
Koalicje(id_koalicji, data_wyborów)
Członkowie(id_partii, id_osoby, od, do)
W_koalicji(id_partii, id_koalicji, od, do)
+
Osoby(id_osoby, imię, nazwisko, id_partii)
Partie(id_partii, nazwa, id_koalicji)
Politycy(id_osoby, id_partii, od, do)
Koalicje(id_koalicji, data_wyborów)
Partie(id_partii, nazwa, koalicja, polityk, od, do)
Politycy(id_polityka, imię, nazwisko, id_partii, od, do)
Partie(id_partii, nazwa, od, do)
Koalicje(id_koalicji, data_wyborów)
W_koalicji(id_partii, id_koalicji, od, do)
51 Studenci planują, czym chcieliby się zajmować w swojej przyszłej pracy zawodowej i jakie stanowiska chcieliby pełnić. Który z poniższych schematów jest najodpowiedniejszy z punktu widzenia zasad projektowania baz danych:
Studenci(id_studenta, imię, nazwisko)
Zajęcia(id_zajęcia, nazwa)
Stanowiska(id_stanowiska, nazwa)
Kto_co(id_studenta, id_stanowiska, id_zajęcia)
Studenci(id_studenta, imię, nazwisko, rok)
Zajęcia(id_zajęcia, nazwa)
Stanowiska(id_stanowiska, nazwa)
Jakie_zajęcie(id_studenta, id_zajęcia)
Jakie_stanowisko(id_studenta, id_stanowiska)
+
Studenci(imię, nazwisko, rok, zajęcie, stanowisko)
Studenci(id_studenta, imię, nazwisko,rok)
Kto_co(id_studenta, stanowisko, zajęcie)
52 W PJWSTK ma powstać baza danych zbierająca informacje o umiejętnościach przydatnych w pracy zawodowej, o przedmiotach, które uczą tych umiejętności oraz o książkach, w których umiejętności są opisane. Który z poniższych schematów jest najodpowiedniejszy z punktu widzenia zasad projektowania baz danych:
Umiejętności(umiejętność, przedmiot, książka)
Przedmioty(id_przedmiotu, nazwa, semestr)
Książki(ISBN, tytuł, autorzy)
Umiejętności(id_umiejętności, id_przedmiotu, nazwa, opis, ISBN, od_strony, do_strony)
Przedmioty(id_przedmiotu, nazwa, semestr)
Książki(ISBN, tytuł, sygnatura)
Umiejętności(id_umiejętności, nazwa, opis)
Gdzie(id_umiejętności, ISBN, od_strony, do_strony)
Na(id_umiejętności, id_przedmiotu)
+
Przedmioty(id_przedmiotu, nazwa, semestr)
Egzemplarze_książek(sygnatura, tytuł, autorzy, nr_półki)
Umiejętności(id_umiejętności, nazwa, opis)
Gdzie(id_umiejętności, sygnatura, od_strony, do_strony)
53 W PJWSTK powstaje baza danych z informacjami, jakie oprogramowanie jest zainstalowane w poszczególnych salach - z myślą o prowadzeniu w nich ćwiczeń z odpowiednich przedmiotów. Który z poniższych schematów jest najodpowiedniejszy z punktu widzenia zasad projektowania baz danych:
Sale(numer_sali, nazwa_programu, wersja, ile_instalacji)
Programy(nazwa_programu, wersja, nazwa_przedmiotu)
Programy(id_programu, firma, nazwa, wersja)
Przedmioty(id_przedmiotu, nazwa)
Sale_programy(nr_sali, id_programu, ile_instalacji)
Przedmioty_programy(id_przedmiotu, id_programu)
+
Programy(id_programu, firma, nazwa, wersja, nazwa_przedmiotu)
Sale_programy(nr_sali, id_programu, wersja, ile_instalacji)
Sale(id_sali, numer, ile_komputerów)
Programy(id_programu, firma, nazwa, wersja)
Przedmioty(id_przedmiotu, nazwa)
Sale_programy(id_sali, id_programu, wersja, ile_instalacji)
Przedmioty_programy(id_przedmiotu, id_programu, wersja)
54 Który ze schematów bazy danych dla biblioteki jest najodpowiedniejszy z punktu widzenia zasad projektowania baz danych. Baza powinna przechowywać informacje o klientach, książkach i wypożyczeniach (wielkie litery oznaczają klucz główny):
Klient(ID_KLIENTA, imię, nazwisko, adres)
Książka(ID_KSIąŻKI, tytuł, autor)
Wypożyczenie(ID_KLIENTA, id_książki, data_wypożyczenia, data_zwrotu)
Klient(ID_KLIENTA, imię, nazwisko, adres)
Książka(ID_KSIąŻKI, tytuł, autor)
Wypożyczenie(ID_KLIENTA, ID_KSIąŻKI, data_wypożyczenia, data_zwrotu)
Klient(ID_KLIENTA, imię, nazwisko, adres)
Książka(ID_KSIąŻKI, tytuł, autor)
Wypożyczenie(ID_KLIENTA, ID_KSIąŻKI, DATA_WYPOŻYCZENIA, data_zwrotu)
+
Klient(ID_KLIENTA, imię, nazwisko, adres)
Książka(ID_KSIąŻKI, tytuł, autor)
Wypożyczenie(ID_KLIENTA, ID_KSIąŻKI, DATA_WYPOŻYCZENIA, DATA_ZWROTU)
55 Potrzebna jest baza danych do ewidencji studentów i ich ocen. Który ze schematów bazy danych jest najodpowiedniejszy z punktu widzenia zasad projektowania baz danych:
Student(id_studenta, imię, nazwisko)
Ocena(id_oceny, ocena, data_wystawienia, nazwa_przedmiotu)
Student(id_studenta, imię, nazwisko)
Ocena(id_oceny, ocena, data_wystawienia, id_przedmiotu, id_studenta)
Przedmiot(id_przedmiotu, nazwa)
+
Student(id_studenta, imię, nazwisko, id_oceny)
Ocena(id_oceny, ocena, data_wystawienia, id_przedmiotu)
Przedmiot(id_przedmiotu, nazwa)
Student(id_studenta, imię, nazwisko, ocena)
Przedmiot(id_przedmiotu, nazwa, id_studenta)
56 Dana jest tabela Osoby(Imie, Nazwisko, Zarobki). Które z następujących instrukcji są składniowo poprawnymi instrukcjami SQL w Oracle:
a)SELECT Osoby.Nazwisko, Osoby.Imie, Osoby.Zarobki WHERE Osoby.Zarobki >1000;
b)INSERT INTO Osoby VALUES ('Jan', 'Kowalski', 2000) WHERE USER = 'KOWALSKI';
c)DELETE FROM Osoby WHERE USER='KOWALSKI';
d)UPDATE Osoby SET Nazwisko=USER; +
57 Dana jest tabela Osoby(Imie, Nazwisko, Zarobki). Które z następujących instrukcji są składniowo poprawnymi instrukcjami SQL w Oracle:
SELECT Osoby.Nazwisko, Osoby.Imie, Osoby.Zarobki FROM Osoby GROUP BY Osoby.Nazwisko;
INSERT INTO Osoby VALUES ('Jan', 'Kowalski', 2000) WHERE USER = 'KOWALSKI';
DELETE FROM Osoby WHERE 'JANKOWSKI'='KOWALSKI';
UPDATE Osoby SET Nazwisko=USER; +
58 Dana jest tabela Osoby(Imie, Nazwisko, Zarobki). Które z następujących instrukcji są składniowo poprawnymi instrukcjami SQL w Oracle:
SELECT Osoby.Nazwisko, Osoby.Imie, Osoby.Zarobki ORDER BY Osoby.Zarobki;
INSERT INTO Osoby SELECT * FROM Osoby WHERE USER = 'KOWALSKI';
DELETE FROM Osoby WHERE USER='KOWALSKI'; +
UPDATE Osoby WHERE Nazwisko='KOWALSKI';
59 Dana jest tabela Osoby(Imie, Nazwisko, Zarobki). Które z następujących instrukcji są składniowo poprawnymi instrukcjami SQL w Oracle:
SELECT Osoby.Nazwisko, Osoby.Imie, Osoby.Zarobki HAVING Osoby.Zarobki>1000;
INSERT INTO Osoby SELECT Nazwisko, Imie FROM Osoby WHERE USER = 'KOWALSKI';
DELETE FROM Osoby WHERE USER='KOWALSKI'; +
UPDATE Osoby WHERE Nazwisko='KOWALSKI';
60 Dana jest tabela Osoby(Imie, Nazwisko, Zarobki). Które z następujących instrukcji są składniowo poprawnymi instrukcjami SQL w Oracle:
SELECT Osoby.Nazwisko, Osoby.Imie, Osoby.Zarobki FROM Osoby HAVING Osoby.Zarobki>1000; +
INSERT INTO Osoby SELECT * FROM Osoby WHERE Nazwisko = 'KOWALSKI';
DELETE FROM Osoby WHENEVER Osoby.Zarobki<1000;
UPDATE Osoby WHERE Nazwisko='KOWALSKI';
61 Dane są dwie tabele Osoby(Imie, Nazwisko, Zarobki, Id_działu) oraz Działy(Id_działu, Nazwa). Które z następujących instrukcji są poprawnymi instrukcjami SQL w Oracle:
SELECT Osoby.Nazwisko, Osoby.Imie, Osoby.Id_działu WHERE Działy.Nazwa='PRAWNY';
INSERT INTO Osoby(Imie, Nazwisko,Zarobki) VALUES ('Jan', 'Kowalski', 2000); +
DELETE FROM Osoby WHERE Id_działu=(SELECT Id_działu FROM Działy WHERE Nazwa='BUFET'); +
UPDATE Osoby DELETE Nazwisko=USER;
62 Dane są dwie tabele Osoby(Imie, Nazwisko, Zarobki, Id_działu) oraz Działy(Id_działu, Nazwa). Które z następujących instrukcji są poprawnymi instrukcjami SQL w Oracle:
SELECT Osoby.Nazwisko, Działy.Nazwa FROM Osoby, Działy WHERE Osoby.Id_działu=Działy.Id_działu GROUP BY Osoby.Nazwisko;
INSERT INTO Osoby VALUES ('Jan', 'Kowalski', 2000) WHERE Osoby.Id_działu = 23;
DELETE FROM Osoby, Działy WHERE Osoby.Nazwisko='KOWALSKI' AND Działy.Nazwa='KASA';
UPDATE Osoby SET Id_działu=NULL; +
63 Dane są dwie tabele Osoby(Imie, Nazwisko, Zarobki, Id_działu) oraz Działy(Id_działu, Nazwa). Które z następujących instrukcji są poprawnymi instrukcjami SQL w Oracle:
SELECT Osoby.Nazwisko, COUNT(Działy.Nazwa) FROM Osoby, Działy WHERE Osoby.Id_działu=Działy.Id_działu GROUP BY Osoby.Nazwisko; +
INSERT INTO Osoby VALUES ('Jan', 'Kowalski', 2000) WHERE Osoby.Id_działu = 23;
DELETE FROM Osoby, Działy WHERE Osoby.Nazwisko='KOWALSKI' AND Działy.Nazwa='KASA' AND Osoby.Id_działu=Działy.Id_działu;
UPDATE Osoby SET Id_działu=NULL WHERE COUNT(*)<5; +
64 Dane są dwie tabele Osoby(Imie, Nazwisko, Zarobki, Id_działu) oraz Działy(Id_działu, Nazwa). Które z następujących instrukcji są poprawnymi instrukcjami SQL w Oracle:
SELECT Osoby.Nazwisko, COUNT(Działy.Nazwa) FROM Osoby, Działy WHERE Osoby.Id_działu=Działy.Id_działu GROUP BY Osoby.Nazwisko HAVING COUNT(Id_działu)<2;
INSERT INTO Osoby VALUES ('Jan', 'Kowalski', 2000) WHERE Osoby.Id_działu = 23;
DELETE FROM Osoby, Działy WHERE Osoby.Nazwisko='KOWALSKI' AND Działy.Nazwa='KASA' AND Osoby.Id_działu=Działy.Id_działu;
UPDATE Osoby SET Id_działu=NULL WHERE 5>(SELECT COUNT(*) FROM Działy); +
65 Dane są dwie tabele Osoby(Imie, Nazwisko, Zarobki, Id_działu) oraz Działy(Id_działu, Nazwa). Które z następujących instrukcji są poprawnymi instrukcjami SQL w Oracle:
SELECT Osoby.Nazwisko, Działy.Nazwa FROM Osoby, Działy WHERE Osoby.Id_działu=Działy.Id_działu GROUP BY Osoby.Nazwisko HAVING COUNT(Działy.Id_działu)<2;
INSERT INTO Osoby VALUES ('Jan', 'Kowalski', 2000);
DELETE FROM Osoby WHERE Osoby.Nazwisko='KOWALSKI' AND Działy.Id_działu=22;
UPDATE Osoby SET Id_działu=NULL WHERE 5>(SELECT COUNT(*) FROM Działy); +
66 Dana jest tabela Osoby(imie, nazwisko, zarobki). Które z następujących instrukcji są poprawnymi instrukcjami SQL w Oracle:
SELECT imie, nazwisko, zarobki FROM osoby UNION SELECT imie, nazwisko FROM osoby;
SELECT AVG(zarobki) FROM osoby; +
SELECT imie, nazwisko FROM osoby WHERE zarobki = MAX(zarobki);
SELECT imie, nazwisko FROM osoby HAVING zarobki = MAX(zarobki);
67 Dana jest tabela Osoby(imie, nazwisko, zarobki, id_dzialu). Które z następujących instrukcji są poprawnymi instrukcjami SQL w Oracle:
SELECT imie, nazwisko, AVG(zarobki) FROM Osoby GROUP BY id_dzialu;
SELECT id_dzialu, AVG(zarobki) FROM Osoby GROUP BY id_dzialu; +
SELECT id_dzialu, AVG(zarobki) FROM Osoby GROUP BY id_dzialu WHERE AVG(zarobki) > 1000;
SELECT AVG(zarobki) from Osoby WHERE zarobki > 1000; +
68 Dana jest tabela Osoby(imie, nazwisko, zarobki). Które z następujących instrukcji są poprawnymi instrukcjami SQL w Oracle:
INSERT INTO Osoby (imie, nazwisko, zarobki) VALUES ('Jan', 'Kowalski', 1000); +
INSERT INTO Osoby VALUES ('Jan', 'Kowalski');
DELETE FROM Osoby WHERE Nazwisko LIKE 'Kowalski'; +
UPDATE Osoby.Nazwisko = 'Kowalski';
69 Wskazać poprawne zapytanie SQL znajdujące pracowników zarabiających minimalną pensję na ich stanowiskach pracy.
SELECT ename, job, sal FROM emp e WHERE sal = (SELECT MIN(sal)FROM emp WHERE job = e.job); +
SELECT ename, job, sal FROM emp WHERE( sal,job) in (SELECT MIN(sal),job FROM emp GROUP BY job ); +
SELECT ename, job, sal FROM emp WHERE sal = (SELECT MIN(sal)FROM emp GROUP BY job );
SELECT ename, job, MIN(sal) FROM emp GROUP BY job;
70 Wskazać poprawne zapytanie SQL znajdujące dla każdego departamentu ostatnio zatrudnionych pracowników.
SELECT deptno, ename, hiredate FROM emp WHERE (hiredate, deptno) IN (SELECT MAX(hiredate), deptno FROM emp GROUP BY deptno); +
SELECT deptno, ename, hiredate FROM emp e WHERE (hiredate,) = (SELECT MAX(hiredate) FROM emp WHERE deptno=e.deptno GROUP BY deptno); +
SELECT deptno, ename, hiredate FROM emp WHERE hiredate = (SELECT MAX(hiredate) FROM emp GROUP BY deptno);
SELECT deptno, ename, MAX(hiredate) FROM emp GROUP BY deptno;
71 Wskazać poprawne zapytanie SQL znajdujące pracowników o najniższych zarobkach w ich działach.
SELECT ename, sal, deptno FROM emp WHERE (sal, deptno) IN (SELECT MIN(sal), deptno FROM empGROUP BY deptno); +
SELECT ename, deptno, sal FROM emp e WHERE sal = (SELECT MIN(sal)FROM emp WHERE deptno = e. deptno); +
SELECT ename, sal, deptno FROM emp WHERE sal IN (SELECT MIN(sal)FROM emp GROUP BY deptno)
SELECT ename MIN(sal), deptno FROM emp GROUP BY deptno)
72 Wskazać poprawne zapytanie SQL znajdujące pracowników, których zarobki są wyższe od pensji każdego pracownika z departamentu 30.
SELECT ename, sal, job, deptno FROM emp WHERE sal> ALL (SELECT DISTINCT sal FROM emp WHERE deptno = 30);
SELECT ename, sal, job, deptno FROM emp WHERE sal> (SELECT Max( sal) FROM emp WHERE deptno = 30); +
SELECT ename, sal, job, deptno FROM emp WHERE sal> ANY (SELECT DISTINCT sal FROM emp WHERE deptno = 30);
SELECT ename, sal, job, deptno FROM emp WHERE sal> (SELECT Min( sal) FROM emp WHERE deptno = 30);
73 Wskazać poprawne zapytanie SQL znajdujące stanowiska pracy występujące w działach 10 lub 20.
SELECT DISTINCT job FROM emp WHERE deptno = 10 OR 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
SELECT DISTINCT job FROM emp WHERE deptno = 10 INTERSECT SELECT DISTINCT job FROM emp WHERE deptno = 20
74 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 INTERSECT SELECT DISTINCT job FROM emp WHERE deptno = 20 +
SELECT DISTINCT job FROM emp WHERE deptno = 10 OR 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 +
75 Wskazać poprawne zapytanie SQL znajdujące pracowników, którzy zarabiają mniej od swoich kierowników.
SELECT e.ename prac_name, e.sal prac_sal, m.ename kier_name, m.sal kier_sal FROM emp e, emp m WHERE e.mgr = m.empno AND e.sal < m.sal +
SELECT e.ename prac_name, e.sal prac_sal, m.ename kier_name, m.sal kier_sal FROM emp e, emp m WHERE e.mgr = m.empno AND m.sal < e.sal
SELECT e.ename prac_name, e.sal prac_sal, m.ename kier_name, m.sal kier_sal FROM emp e, emp m WHERE e.mgr = m.mgr AND e.sal < m.sal
SELECT e.ename prac_name, e.sal prac_sal, m.ename kier_name, m.sal kier_sal FROM emp e, emp m WHERE e.mgr = m.mgr AND m.sal < e.sal
76 Wskazać poprawne zapytanie SQL znajdujące średnie zarobki tylko tych departamentów, które zatrudniają więcej niż trzech pracowników.
SELECT deptno, AVG(sal) FROM emp GROUP BY deptno HAVING COUNT (*) > 3; +
SELECT deptno, AVG(sal) FROM emp HAVING COUNT (*) > 3;GROUP BY deptno ;
SELECT deptno, AVG(sal) FROM emp GROUP BY deptno WHERE COUNT (*) > 3;
SELECT deptno, AVG(sal) FROM emp WHERE COUNT (*) > 3;GROUP BY deptno ;
77 Wskazać poprawne zapytanie SQL znajdujące stanowiska, na których średni zarobek wynosi 3000 lub więcej.
SELECT job, AVG(sal) FROM emp GROUP BY job HAVING AVG (sal) > =3000; +
SELECT job, AVG(sal) FROM emp HAVING AVG (sal) > =3000GROUP BY job;
SELECT job, AVG(sal) FROM emp GROUP BY job WHERE AVG (sal) > =3000;
SELECT job, AVG(sal) FROM emp WHERE AVG (sal) > =3000 GROUP BY job;
78 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 HAVING COUNT (*) > 3 GROUP BY deptno;
SELECT deptno, COUNT(*) FROM emp GROUP BY deptno WHERE COUNT (*) > 3;
SELECT deptno, COUNT(*) FROM emp WHERE COUNT (*) > 3 GROUP BY deptno;
79 Wskazać poprawne zapytanie SQL znajdujące ilość pracowników w dziale mającym siedzibę w DALLAS.
SELECT COUNT (*) FROM emp, dept WHERE dept.loc = 'DALLAS' AND emp.deptno = dept.deptno GROUP BY dept,deptno; +
SELECT COUNT (*) FROM emp WHERE deptno = (SELECT deptno FROM dept WHERE .loc = 'DALLAS') +
SELECT COUNT (*) FROM emp, dept WHERE dept.loc = 'DALLAS' GROUP BY dept,deptno;
SELECT COUNT (*) FROM emp, dept WHERE emp.deptno = dept.deptno GROUP BY dept,deptno HAVING dept.loc = 'DALLAS';
80 Wskazać poprawne zapytanie SQL znajdujące średni zarobek pracowników z drugiej klasy zarobkowej.
SELECT AVG(sal ) FROM emp, salgrade WHERE.grade = 2 AND sal BETWEEN losal AND hisal GROUP BY.grade
SELECT AVG(sal ) FROM emp, salgrade WHERE.grade = 2 AND sal > losal AND sal < hisal GROUP BY.grade
SELECT AVG(sal ) FROM emp, WHERE sal > (SELECT losal FROM salgrade WHERE.grade = 2) AND sal < (SELECT hisal FROM salgrade WHERE.grade = 2) +
SELECT AVG(sal ) FROM emp, salgrade WHERE.grade = 2 AND sal BETWEEN losal AND hisal ;
81 Wskazać poprawne zapytanie SQL znajdujące trzech najlepiej zarabiających pracowników w firmie - ich nazwiska i pensje.
SELECT ename, sal FROM emp e WHERE 3 > (SELECT count (*) FROM emp WHERE e.sal < sal); +
SELECT ename, sal FROM emp e WHERE count(*)<3
SELECT ename, sal FROM emp e GROUP BY.deptno HAVING count(*)<3
82 W bloku PL/SQL występują:
deklaracje klas,
sekcja wyjątków,
instrukcje SQL, +
instrukcje SQL*Plus.
83 Wśród instrukcji występujących w bloku PL/SQL mogą się znaleźć:
instrukcje SQL*Plus,
deklaracje zmiennych, +
instrukcja CREATE TABLE,
instrukcja COMMIT. +
84 Wśród instrukcji występujących w bloku PL/SQL mogą się znaleźć:
instrukcja SET SERVEROUTPUT ON,
instrukcja CREATE TABLE,
instrukcja DBMS_OUTPUT.PUT_LINE('Początek transakcji'), +
instrukcja ROLLBACK. +
85 Wśród instrukcji występujących w bloku PL/SQL mogą się znaleźć:
instrukcja warunkowa, +
instrukcja CREATE TABLE,
instrukcja SELECT Table_Name FROM User_Tables,
instrukcja ROLLBACK. +
86 Wśród instrukcji występujących w bloku PL/SQL mogą się znaleźć:
podniesienie wyjątku, +
deklaracje wyjątków,
instrukcja SELECT * FROM Osoby,
instrukcja ROLLBACK. +
87 Kursor w PL/SQL jest to:
rodzaj procedury,
nazwana instrukcja SQL, +
obszar roboczy używany do wykonania instrukcji SQL,
narzędzie do podnoszenia wyjątków.
88 Czy definicja kursora w PL/SQL może dotyczyć instrukcji:
INSERT,
SELECT, +
DELETE,
UPDATE.
89 Nazwa kursora może się pojawić w następujących kontekstach:
OPEN nazwa_kursora, +
SELECT nazwa_kursora,
EXIT WHEN nazwa_kursora%NOTFOUND, +
GOTO nazwa_kursora.
90 Klauzula WHERE CURRENT OF nazwa_kursora może wystąpić w instrukcji:
SELECT,
INSERT,
DELETE, +
UPDATE. +
91 Nazwa wyjątku może się pojawić w następujących kontekstach;
w instrukcji przypisania,
w definicji kursora,
w instrukcji RAISE, +
po słowie kluczowym WHEN, +
92 Trigger (wyzwalacz) tabelowy może zostać uruchomiony:
przed operacją na tabeli +
po operacji na tabeli +
bez związku z operacjami na tabeli
przed i po operacji na tabeli +
93 Dla każdej tabeli można określić
maksymalnie 2 typy wyzwalaczy
maksymalnie 12 typów wyzwalaczy
maksymalnie 12 wyzwalaczy
dowolną ilość wyzwalaczy +
94 Polecenia ROLLBACK i COMMIT dotyczą poleceń SQL
tylko INSERT, UPDATE, SELECT
tylko INSERT, UPDATE, SELECT, DELETE
tylko SELECT, INSERT, UPDATE, SELECT, DELETE
wszystkich poleceń SQL zmieniających zawartość tabel +
95 W PL/SQL wynik działania instrukcji SELECT może zostać zapisany w postaci
tabeli
kursora +
perspektywy
zmiennej +
96 Klauzula "DECLARE Dane_Osoby Osoba%ROWTYPE" jest w PL/SQL
deklaracją zmiennej
deklatracją nowego rekordu
deklaracją nowego typu zmiennej
deklaracją zmiennej wraz z definicją jej typu +
97 Kursor w PL/SQL to
typ zmiennej
rodzaj procedury
obiekt o określonych właściwościach i metodach +
funkcja debuggera
98 Instrukcja FETCH jest używana w kursorze PL/SQL w celu
przejścia do następnego rekordu
pobrania zawartości rekordu ze źródła danych +
przejścia do następnego rekordu i usunięcia poprzedniego rekordu
pobrania zawartości rekordu ze źródła danych i przejścia do następnego rekordu
99 Funkcja NVL służy do
Zamiany napotkanej w tabeli wartości "NULL" na zero
Zamiany napotkanej w tabeli wartości z "NULL" na podaną w argumencie wartość +
Zamiany wartości zmiennej z "NULL" na podaną w argumencie wartość +
Zamiany wartości podanej w argumencie zmiennej lub komórki perspektywy z "NULL" na podaną w drugim argumencie wartość
100 Użycie klauzuli UNQUE w deklaracji pola tabeli instrukcji CREATE TABLE oznacza, że:
w tym polu nie może pojawić się wartość NULL
w żadnym innym polu tej tabeli nie można użyć klauzuli UNIQUE
wartości w tym polu nie mogą się powtarzać +
na tej kolumnie (polu) zostanie automatycznie zalozony indeks
101 Użycie klauzuli PRIMARY KEY deklaracji pola tabeli instrukcji CREATE TABLE powoduje, że:
To pole staje się polem klucz głównego +
W żadnym innym polu tej tabeli nie może zostać użyta klauzula PRIMARY KEY
W polu yum nie może wystąpić wartość "NULL" +
Na tej kolumnie (polu) zostanie automatycznie założony indeks +
102 Perspektywa (View) w PL/SQL
Jest obiektem przechowującym rekordy wybrane poleceniem SELECT
Jest obiektem utworzonym w oparciu o instrukcję SELECT +
Może zostać użyta tak, jak by była tabelą np. w instrukcji SELECT, INSERT, UPDATE +
Wiersze (rekordy) perspektywy nie są przechowywane w bazie danych +
103 Instrukcja SELECT Table_Name FROM User_Tables
Wypisuje nazwy kolumn z tabeli User_Tables
Wypisuje wszystkie rekordy z perspektywy User_Tables
Zwraca nazwy tabel znajdujących się w obszarze tabel użytkownika
Zwraca nazwy tabel utworzonych przez użytkownika +
104 Sekwencja (SEQUENCE) to
Ciąg instrukcji SQL
Obiekt PL/SQL przechowujący procedury, funkcje i wyzwalacze
Obiekt przechowywyany w bazie danych, służący do generowania kluczy głównych i jednozancznych +
Typ zmiennej w PL/SQL której użycie generuje autonumerację rekordów tabeli
105 Instrukcja COMMIT
Dotyczy ostatnio wydanego polecenia SELECT, UPDATE albo DELETE
Dotyczy wszystkich poleceń SELECT, INSERT, UPDATE albo DELETE wydanych od ostatniego polecenia ROLLBACK
Dokonuje trwałej zmiany w zawartości table bazy danych +
Wszystkich poleceń INSERT, UPDATE albo DELETE wydanych od ostatniego polecenia COMMIT albo ROLLBACK +
106 Instrukcja CREATE PROCEDURE może się pojawić:
w bloku PL/SQL,
w SQL*Plusie, +
w innej procedurze,
w wyzwalaczu.
107 Instrukcja CREATE FUNCTION może się pojawić:
w bloku PL/SQL,
w SQL*Plusie, +
w innej funkcji,
w wyzwalaczu.
108 Instrukcja CREATE TRIGGER może się pojawić:
w bloku PL/SQL,
w SQL*Plusie, +
w procedurze,
w innym wyzwalaczu.
109 Instrukcja CREATE PACKAGE może się pojawić:
w bloku PL/SQL,
w wyzwalaczu
w innym pakiecie,
w skrypcie SQL*Plus, +
110 Instrukcja CREATE PACKAGE BODY może się pojawić:
w bloku PL/SQL,
w wyzwalaczu
w skrypcie SQL*Plus, +
w pakiecie.
111 W wyzwalaczu można:
poprosić użytkownika o podanie wartości zmiennej,
na ekranie użytkownika formularza wypisać ostrzeżenie,
sprawdzić czy wartości wstawiane do tabeli są poprawne, +
utworzyć nową tabelę.
112 W wyzwalaczu można:
poprosić użytkownika o podanie hasła,
na ekranie użytkownika wypisać komunikat o błędzie, +
utworzyć nową tabelę.
porównać ze sobą nową i starą wartość w kolumnie przy UPDATE +
113 W wyzwalaczu można:
użyć instrukcji COMMIT, +
nie dopuścić do wprowadzenia zmian, +
sprawdzić czy wartości wstawiane do tabeli są poprawne, +
utworzyć nową tabelę.
114 W wyzwalaczu można:
poprosić użytkownika o podanie wartości zmiennej,
do kolumny klucza głównego tworzonego wiersza wygenerować nową wartość, +
sprawdzić która jest godzina, +
utworzyć nową tabelę.
115 W wyzwalaczu można:
zrealizować akcję referencyjną NULLIFY,
przekazać informację o błędzie do aplikacji klienta, +
sprawdzić czy w danej kolumnie wstawianego wiersza występuje NULL, +
utworzyć nowy wyzwalacz.
116 Które mechanizmy wchodzą w skład oprogramowania strony serwera bazy danych:
formularze,
deklaratywne więzy spójności, +
wyzwalacze wierszowe, +
obiekty OCX.
117 Wśród więzów spójności encji znajdują się:
więzy klucza głównego, +
więzy klucza obcego,
zdarzenia formularzowe,
więzy CHECK.
118 Wśród więzów spójności encji znajdują się:
więzy klucza obcego,
więzy klucza jednoznacznego, +
blokady,
więzy NOT NULL +
119 Wśród więzów spójności referencyjnej znajdują się:
więzy klucza głównego,
więzy klucza obcego, +
więzy NOT NULL,,
więzy CHECK
120 Do zapewnienia więzów spójności referencyjnej służą:
wyzwalacze, +
klauzula CHECK,
klauzula REFERENCES, +
indeksy.
121 Do zapewnienia więzów spójności encji służą:
wyzwalacze, +
klauzula CHECK, +
klauzula REFERENCES,
indeksy.
122 Które akcje referencyjne są dostępne w Oracle:
RESTRICTED, +
NULLIFY,
DEFAULT,
CASCADE. +
123 SQL*Plus stanowi:
część serwera bazy danych,
część serwera aplikacji Oracle,
język interakcyjnych poleceń do bazy danych, +
klient korzystający z serwera bazy danych.
124 Deklaracja VARIABLE Klient VARCHAR2(30) jest częścią:
SQL,
PL/SQL,
SQL*Plus, +
prekompilatora do języka C.
125 Instrukcja ACCEPT Klient PROMPT "Podaj nazwisko klienta: " jest częścią:
SQL,
PL/SQL,
SQL*Plus, +
prekompilatora do języka C.
126 Kursor w PL/SQL służy do:
Wprowadzania danych z klawiatury,
Przeglądania i wykonywania operacji na rekordach zwróconych przez zapytanie. +
Przyspieszenia wykonywania zapytań.
Obsługi wyjątków.
127 Obiektowa baza danych w Oracle obejmuje:
wielowymiarowość,
kolekcje, +
typy obiektowe, +
dziedziczenie. +
128 Obiektowa baza danych w Oracle obejmuje:
tabele zagnieżdżone, +
hermetyzację obiektów,
perspektywy obiektowe, +
transformację STAR.
129 W kolumnach bazy danych Oracle można przechowywywać:
duże obiekty binarne, +
duże obiekty znakowe, +
wskaźniki do obiektów, +
zagnieżdżone tabele. +
130 Czy są takie instrukcje w Oracle:
CREATE TYPE, +
CREATE CLASS,
CREATE METHOD,
CREATE SERVLET.
131 W bazie danych Oracle można zmieniać zawartość następujących typów obiektów:
BLOB, +
CLOB, +
BFILE, +
NCLOB. +
132 Standard SQL określa następujące interfejsy programistyczne:
PL/SQL,
Java,
moduły, +
osadzony SQL. +
133 Standard SQL określa następujące interfejsy programistyczne:
PL/SQL,
Interfejs Poziomu Wywołań CLI,
moduły, +
osadzony SQL. +
134 Standard SQL określa następujące interfejsy programistyczne:
osadzony SQL, 1Interfejs Poziomu Wywołań CLI,
ODBC,
JDBC.
135 Osadzanie instrukcji SQL w interfejsie osadzonego SQL dotyczy:
cache serwera bazy danych,
słownika danych,
języka programowania,
PL/SQL. +
136 Instrukcje osadzonego SQL są poprzedzane słowem kluczowym:
EXEC, +
DO,
EXEC SQL,
BEGIN.
137 Instrukcja "SQLExecDirect(hstmt, (SQLCHAR *) sqlsource, SQL_NTS)" dotyczy języka:
PL/SQL,
osadzonego SQL,
Interfejsu Poziomu Wywołań, +
ASP.
138 Interfejs JDBC może być używany w:
apletach, +
serwletach, +
kodzie składowanym w bazie danych,
programach aplikacyjnych. +
139 W JDBC zbiór wyników zapytania znajduje się na obiekcie klasy:
Rowset,
RecordSet,
ResultSet, +
QuerySet.
140 W zapytaniu "SELECT HelloWorld() FROM Dual;" identyfikator HelloWorld może oznaczać:
funkcję PL/SQL; +
klasę Java;
funkcję PL/SQL związaną z metodą klasy Java;
procedurę PL/SQL. +
141 Jako obiekty bazy danych Oracle można przechowywać kod języków:
C, +
Java, +
PL/SQL, +
VisualBasic. +
142 Aplikacja wykonywana za pomocą internetowego modułu PLSQL wykorzystuje:
serwer WWW Apache;
powiązania ODBC
powiązania bazodanowe, +
powiązania JDBC.
143 Aplikacja wykonywana za pomocą internetowego modułu PLSQL wykorzystuje:
powiązania bazodanowe, +
transformację STAR,
procedury PL/SQL,
migawki.
144 Aplikacja wykonywana za pomocą Internet Information Servera wykorzystuje:
ODBC,
powiązania bazodanowe, +
wielowymiarowość,
skrypty Visual Basica.
145 Aplikacja ASP jest przechowywana jako:
plik tekstowy, +
plik binarny,
procedura w bazie danych,
biblioteka DLL.
146 W internetowej aplikacji PL/SQL przy dostępie do danych w bazie danych wykorzystuje się:
protokół HTTP,
metodę GET,
instrukcję SELECT, +
kursor.
147 Serwlet jest to:
aplet przechowywany po stronie serwera aplikacji, +
obiekt klasy HttpServlet,
metoda klasy HttpServlet,
rodzaj sterownika JDBC.
148 Serwlet przy dostępie do danych w bazie danych wykorzystuje:
serwer WWW Apache
protokół HTTP
powiązania bazodanowe, +
powiązania JDBC.
149 Programista aplikacji internetowej w postaci serwletu opracowuje kod metod:
doGet +
doPost +
HttpServletRequest +
HttpServletResponse +
150 Które metody dotyczą zachowania spójności danych przy współbieżnym dostępie:
blokowanie pesymistyczne +
przyznawanie uprawnień do obiektów w bazie danych
autoryzowanie dostępu
blokowanie optymistyczne +
151 Które metody dotyczą możliwości odtworzenia danych po awarii dysku:
dziennik +
repliki
udostępnienie danych na stronach WWW
kopia zapasowa +
152 Które metody dotyczą ochrony danych przed nieautoryzowanym dostępem:
kopia zapasowa
wprowadzenie kont i haseł +
słownik danych (metadane)
przyznawanie uprawnień do wykonywania operacji na obiektach +
153 Własność szeregowalności transakcji oznacza:
konieczność specyfikowania kolejności wykonywania transakcji
wymuszenie na systemie szeregowego wykonywania transakcji
współbieżną realizację transakcji tak jakby były one wykonywane jedna po drugiej +
ustalenie priorytetu wykonywania transakcji
154 Dane słownika danych (metadane) są przechowywane w relacyjnej bazie danych:
w specjalnym pliku binarnym w tym samym katalogu co pliki systemu zarządzania bazą danych
nie muszą być przechowywane w bazie danych
w specjalnej bazie danych (budowanej przez administratora)
w specjalnych tabelach w tej samej bazie danych +
155 Do odtworzenia stanu bazy danych po awarii procesu użytkownika służą:
dziennik powtórzeń,
pliki śladu,
segmenty wycofań, +
kopia zapasowa.
156 Do odtworzenia stanu bazy danych po awarii procesu serwera służą:
dziennik powtórzeń, +
pliki śladu,
segmenty wycofań, +
kopia zapasowa.
157 Do odtworzenia stanu bazy danych po awarii dysku z danymi służą:
dziennik powtórzeń, +
pliki śladu,
segmenty wycofań, +
kopia zapasowa. +
158 Przy otwieraniu bazy danych przy powtórnym włączeniu komputera po nagłej awarii zasilania są używane:
dziennik powtórzeń, +
pliki śladu,
segmenty wycofań, +
kopia zapasowa.
159 Rezerwowa baza danych pracująca w trybie STANDBY otrzymuje z głównej bazy danych:
pliki z danymi,
dziennik powtórzeń,
zarchiwizowany dziennik powtórzeń, +
nic nie otrzymuje.
160 Poziom izolacji transakcji READ UNCOMMITED obejmuje następujące własności:
brak traconych modyfikacji, +
nie-zatwierdzony odczyt, +
nie-powtarzalny odczyt, +
fantomy. +
161 Poziom izolacji transakcji READ COMMITED obejmuje następujące własności:
brak traconych modyfikacji, +
nie-zatwierdzony odczyt,
nie-powtarzalny odczyt, +
fantomy. +
162 Poziom izolacji transakcji REPEATABLE READ obejmuje następujące własności:
brak traconych modyfikacji, +
nie-zatwierdzony odczyt,
nie-powtarzalny odczyt,
fantomy. +
163 Poziom izolacji transakcji SERIALIZABLE obejmuje następujące własności:
brak traconych modyfikacji, +
nie-zatwierdzony odczyt,
nie-powtarzalny odczyt,
fantomy.
164 Domyślny poziom izolacji w Oracle obejmuje następujące własności:
brak traconych modyfikacji, +
nie-zatwierdzony odczyt,
nie-powtarzalny odczyt, +
fantomy. +
165 Przy normalnym otwieraniu bazy danych system korzysta z informacji zapisanych w:
pliku kontrolnym,
pliku śladu,
dzienniku powtórzeń,
pliku inicjalizacyjnym instancji. +
166 Które mechanizmy są używane do zapewnienia wielowersyjności w bazie danych:
dziennik powtórzeń, +
pliki śladu,
segmenty wycofań,
kopia zapasowa.
167 Które mechanizmy są używane w bazie danych przy wykonywaniu transakcji typu READ ONLY:
dziennik powtórzeń, +
pliki śladu,
segmenty wycofań, +
kopia zapasowa.
168 Które mechanizmy są używane do zapewnienia spójności bazy danych w środowisku współbieżnie wykonywanych transakcji:
blokady, +
perspektywy,
role,
wielowersyjność. +
169 Przy wykonywaniu operacji ROLLBACK są wykorzystywane:
dziennik powtórzeń, +
segmenty wycofań, +
kopia zapasowa,
pliki śladu.
170 Terminy atomowość-spójność-izolacja-trwałość oznaczane skrótem ACID dotyczą:
modelu wykonywania transakcji w bazie danych, +
modelu obliczeń w rozproszonej bazie danych,
modelu wykonywania pojedynczej instrukcji SQL,
modelu sprawdzania więzów spójności.
171 Czy jest prawdą:
Z każdą stroną w puli buforów jest wiązany licznik odwołań i bit aktualizacji. +
Zmieniana strona jest natychmiast zapisywana na dysk.
Z jednej strony w puli buforów może korzystać tylko jeden użytkownik.
Zawsze najlepszą strategią zastępowania stron jest LRU.
172 Czy format stron z rekordami zmiennej długości zapewnia:
Przesuwanie rekordów po stronie bez zmiany identyfikatora rekordu. +
Utrzymywanie spójnej puli wolnych miejsc. +
Zamianę miejscami dwóch rekordów na stronie. +
Używanie zewnętrznych wskaźników do rekordu. +
173 Indeks pogrupowany jest gdy:
pozycje danych są podzielone na osobne partycje,
rekordy danych i pozycje danych indeksu są w związku 1-1,
pozycje danych indeksu z tą samą wartością klucza wyszukiwania znajdują się na tej samej stronie,
uporządkowanie zapisu rekordów danych jest takie samo jak uporządkowanie zapisu pozycji danych indeksu. +
174 Indeks na B+ drzewie zapewnia:
możliwość wypisywania pozycji danych indeksu w kolejności uporządkowanej względem wartości klucza wyszukiwania, +
realizację zapytań równościowych względem wartości klucza wyszukiwania, +
realizację zapytań zakresowych względem wartości klucza wyszukiwania, +
aktualizację wartości klucza wyszukiwania. +
175 Indeks haszowany zapewnia:
możliwość wypisywania pozycji danych w kolejności uporządkowanej względem wartości klucza wyszukiwania, +
realizację zapytań równościowych względem wartości klucza wyszukiwania,
realizację zapytań zakresowych względem wartości klucza wyszukiwania,
aktualizację wartości klucza wyszukiwania. +
176 Sortowania w bazie danych używa się przy:
wykonywaniu klauzuli GROUP BY, +
budowie początkowego indeksu na B+-drzewie, +
wykonywaniu klauzuli DISTINCT, +
metodzie złączania Nested Loops Join.
177 Sortowania w bazie danych używa się przy:
wykonywaniu klauzuli ORDER BY, +
budowie początkowego indeksu na B+-drzewie, +
wykonywaniu klauzuli UNION DISTINCT, +
metodzie złączania Sort-Merge. +
178 Sortowania w bazie danych używa się przy:
wykonywaniu klauzuli WHERE,
budowie początkowego indeksu na B+-drzewie, +
wykonywaniu klauzuli UNION ALL,
metodzie złączania Index Nested Loops Join.
179 Sortowania w bazie danych używa się przy:
wykonywaniu klauzuli EXCEPT, +
wykonywaniu klauzuli GROUP BY, +
wykonywaniu klauzuli HAVING,
metodzie złączania Nested Loops Join.
180 Sortowania w bazie danych używa się przy:
wykonywaniu klauzuli EXCEPT, +
budowie początkowego indeksu na B+-drzewie, +
wykonywaniu funkcji agregującej AVG,
metodzie złączania Hash Join.
181 Sortowanie za pomocą B+-drzewa jest lepsze niż sortowanie zewnętrzne, gdy indeks jest:
rzadki,
gęsty,
pogrupowany, +
wewnętrzny. +
182 Strategia optymalizacyjna "tylko-indeks" stosuje się, gdy:
na tabeli jest założony tylko jeden indeks,
zamiast rozważać tabelę można rozważyć jeden z jej indeksów, +
wszystkie kolumny występujące na liście SELECT występują w kluczu wyszukiwania jednego z indeksów, +
można usunąć tabelę zostawiając w bazie danych tylko jej indeks.
183 W metodzie Hash Join występuje liczba funkcji haszujących równa:
0,
1,
2, +
3.
184 Które stwierdzenia stanowią dobre heurystyki optymalizacji zapytań:
Selekcje wykonuj tak wcześnie, jak tylko możliwe. +
Staraj się związać selekcje z iloczynem kartezjańskim, w celu zidentyfikowania rodzaju złączenia relacji. +
Wybierz plan wykonania działający "w miejscu" bez pomocniczej relacji. +
Wyszukuj wspólne podwyrażenia i wykonuj je tylko raz. +
185 Które stwierdzenia stanowią dobre heurystyki optymalizacji zapytań:
Przed przystąpieniem do realizacji zapytania dokonaj analizy możliwych opcji z oszacowaniem ich kosztu. +
Staraj się związać selekcje z iloczynem kartezjańskim, w celu zidentyfikowania rodzaju złączenia relacji. +
Wykonuj jednocześnie ciągi operacji jednoargumentowych takich jak selekcje i rzuty. +
Przetwórz wstępnie plik we właściwy sposób (indeksy, sortowanie). +
186 Które z poniższych stwierdzeń są prawdziwe:
Przy warunkach zakresowych istotna jest kolejność atrybutów w kluczu wyszukiwania. +
Indeks haszowany na relacji wewnętrznej jest dobry dla metody Index Nested Loops Join. +
Pogrupowany indeks na B+ drzewie względem kolumn złączenia jest dobry dla metody Sort-Merge Join. +
Metoda Hash Join wymaga istnienia indeksu haszowanego.
187 Które z poniższych stwierdzeń są prawdziwe:
Metoda Sort-Merge Join wymaga istnienia indeksu na B+-drzewie.
Indeks pogrupowany jest użyteczny przy zapytaniach zakresowych a także przy mało-selektywnych zapytaniach równościowych. +
Aktualizacja pól wyszukiwania w indeksach spowalnia INSERT/DELETE/UPDATE. +
Tylko jeden indeks może być pogrupowany dla jednej tabeli. +
188 Protokół ścisłego blokowania dwufazowego (Strict 2PL) obejmuje warunki:
Każda transakcja musi uzyskać blokadę S na obiekcie zanim odczyta ten obiekt. +
Jeśli transakcja trzyma blokadę X na obiekcie, żadna inna transakcja nie ma prawa założyć żadnej blokady (ani S ani X) na tym obiekcie. +
Aby założyć blokadę X transakcja musi zwolnić wszystkie swoje blokady S.
Blokady trzymane przez transakcję są zwalniane gdy tylko nie są jej potrzebne.
189 Protokół ścisłego blokowania dwufazowego (Strict 2PL) obejmuje warunki:
Każda transakcja musi uzyskać blokadę X na obiekcie zanim odczyta ten obiekt.
Jeśli transakcja trzyma blokadę S na obiekcie, żadna inna transakcja nie ma prawa założyć żadnej blokady (ani S ani X) na tym obiekcie.
Blokady trzymane przez transakcję są zwalniane gdy transakcja kończy się. +
Z każdą blokadą X powinna być związana odpowiadająca jej blokada S ale nie na odwrót.
190 Protokół ścisłego blokowania dwufazowego (Strict 2PL) obejmuje warunki:
Każda transakcja musi uzyskać blokadę X na obiekcie przed zapisaniem go. +
Jeśli transakcja trzyma blokadę S na obiekcie, żadna inna transakcja nie ma prawa założyć żadnej blokady (ani S ani X) na tym obiekcie.
Dwie współpracujące ze sobą transakcje mogą wspólnie założyć jedną blokadę X.
W pierwszej fazie transakcja zakłada blokady, w drugiej fazie je zwalnia w dowolnej kolejności.
191 Aby zapobiec zakleszczeniu (deadlock) wystarczy:
uzależniać założenie blokady od priorytetu transakcji, +
uzależniać założenie nowej blokady od liczby założonych już przez transakcję blokad,
pozwalać tylko jednej transakcji na założenie blokady X,
sprawdzać, czy w grafie oczekiwania na zwolnienie blokady występuje cykl. +
192 Fantomem nazywamy:
tabelę, do której nie ma dostępu żaden użytkownik,
wiersz, który został usunięty z tabeli, po tym jak inna transakcja odczytała ją,
wiersz, który został wpisany do tabeli, po tym jak inna transakcja odczytała ją, +
wiersz, który został zmieniony, po tym jak inna transakcja odczytała ją.
193 Który rodzaj złączenia jest dobry w rozproszonej bazie danych:
sort-merge join,
hash join,
półzłączenia, +
złączenie zewnętrzne.
194 Czy jest prawdą dla protokołu dwu-fazowego zatwierdzania:
jest tylko jeden koordynator, +
koordynator podejmuje decyzję "commit", gdy co najmniej jeden z węzłów przesłał mu komunikat "yes",
koordynator podejmuje decyzję "abort", gdy wszystkie węzły nadesłały komunikat "no",
w przypadku awarii sieci jest potrzebna dodatkowa trzecia faza.
195 Czy jest prawdą dla protokołu dwu-fazowego zatwierdzania:
jeden węzeł wyróżnia się jako główny koordynator, a drugi jako zapasowy koordynator,
koordynator podejmuje decyzję "commit", gdy każdy z węzłów przysłal mu komunikat "yes", +
tylko koordynator zapisuje komunikaty realizacji protokołu do swojego dziennika powtórzeń,
w przypadku awarii koordynatora jego funkcje przejmuje inny węzeł.
196 Czy jest prawdą:
Bufory bazy danych zawierają używane ostatnio bloki danych z bazy danych. +
Bufory bazy danych mogą zawierać zmodyfikowane dane zatwierdzonych transakcji, które jeszcze nie zostały przepisane na dysk. +
Bufory bazy danych zmienione przez niezatwierdzone transakcje mogą zostać przepisane na dysk. +
W buforach bazy danych są zapisywane pozycje segmentów wycofań. +
197 Segmenty wycofań służą do:
wycofywania nie zatwierdzonych zmian przy odtwarzaniu, +
zagwarantowania spójności odczytu, +
realizacji transakcji korzystających ze zdjęcia migawkowego danych, +
przyśpieszenia wykonywania zapytań.
198 Które z mechanizmów są używane w rozproszonej bazie danych:
dyspozytor,
powiązanie bazodanowe, +
wielowersyjność
audyt.
199 Które z mechanizmów są używane w rozproszonej bazie danych:
replikacja danych, +
blokady,
transformacja STAR,
partycjonowanie tabeli.
200 Które z mechanizmów są używane w rozproszonej bazie danych:
klaster
migawki, +
instrukcja ANALYZE,
serwer równoległy.
201 Które z mechanizmów są używane w rozproszonej bazie danych:
indeks bitmapowy,
powiązanie bazodanowe, +
hurtownia danych,
agregacja danych.
202 Które z mechanizmów są używane w rozproszonej bazie danych:
równoległe wykonywanie zapytań,
dwufazowe zatwierdzanie, +
dziennik migawki, +
audyt.
203 Które z mechanizmów są charakterystyczne dla hurtowni danych:
replikacja danych,
blokady,
transformacja STAR, +
partycjonowanie tabeli. +
204 Które z mechanizmów są charakterystyczne dla hurtowni danych:
blokady,
perspektywy,
role,
indeksy bitmapowe. +
205 Które z mechanizmów są charakterystyczne dla hurtowni danych:
histogram, +
audyt,
agregacje, +
profil.
206 Które z mechanizmów są charakterystyczne dla hurtowni danych:
instrukcja ANALYZE, +
szeregowalność,
wielowymiarowość, +
dziennik powtórzeń.
207 Które z mechanizmów są charakterystyczne dla hurtowni danych:
role,
wielowymiarowość, +
migawki,
schemat gwiazda. +
208 Które obiekty są związane z agregacją w hurtowni danych:
indeks bitmapowy,
perspektywa zmaterializowana, +
klaster,
klauzula GROUP BY. +
209 Dane są tabele P(A,B), Q(B,C). W aplikacji często jest wykonywane zapytanie SELECT P.A,Q.C FROM P, Q WHERE P.B=Q.B AND Q.B='&Klient'. Która ze struktur danych byłaby najkorzystniejsza:
indeksy na P.B, Q.B;
indeksy na P.A, Q.C;
klaster obejmujący P i Q z indeksem B; +
indeks na Q.B.
210 Dane są tabele P(A,B), Q(B,C). W aplikacji często jest wykonywane zapytanie SELECT P.A,Q.C FROM P, Q WHERE P.B=Q.B. Która ze struktur danych byłaby najkorzystniejsza:
indeksy na P.B, Q.B;
indeksy na P.A, Q.C; +
klaster obejmujący P i Q z indeksem B;
indeks na P.B.
211 Dane są tabele P(A,B), Q(B,C). W aplikacji często jest wykonywane zapytanie SELECT P.A,Q.B FROM P, Q WHERE P.B=Q.B AND Q.C='&Klient'. Która ze struktur danych byłaby najkorzystniejsza:
indeksy na P.B, Q.B;
indeksy na P.B, Q.C; +
klaster obejmujący P i Q z indeksem B;
indeks na Q.C.
212 Zastosowanie indeksu przy wyszukiwaniu jest uzasadnione, gdy dzięki niemu ograniczamy się do:
>=50% ogólnej liczby wierszy w tabeli.
<=50% ogólnej liczby wierszy w tabeli.
<=25% ogólnej liczby wierszy w tabeli. +
>=25% ogólnej liczby wierszy w tabeli.
213 Zastosowanie strategii tylko indeks jest stosowane, gdy:
na tabeli nie jest założony żaden indeks,
wyszukiwanie jest określone na perspektywie,
wyszukiwanie sprowadza się do przejścia indeksu, +
wstawianie sprowadza się do wstawienia do indeksu.
214 Indeks bitmapowy zakłada się na kolumnie:
w której liczba różnych wartości jest duża,
w której liczba różnych wartości jest mała, +
gdy wyszukiwanie jest określane przez równość z podanymi wartościami,
gdy zachodzi konieczność sortowania względem wartości w tej kolumnie.
215 Indeks używający B-drzewa zakłada się na kolumnie:
gdy wyszukiwanie po tej kolumnie daje zwykle duży zbiór wyników,
gdy wyszukiwanie po tej kolumnie daje zwykle mały zbiór wyników, +
gdy wyszukiwanie często dotyczy największej wartości, +
gdy często sortuje się dane względem tej kolumny. +
216 Czy istniejący indeks przyśpiesza wykonanie instrukcji SELECT:
nigdy,
zawsze,
czasem. +
217 Czy istniejący indeks przyśpiesza wykonanie instrukcji INSERT:
nigdy,
zawsze,
czasem. +
218 Czy istniejący indeks przyśpiesza wykonanie instrukcji UPDATE:
nigdy
zawsze
czasem +
219 Czy istniejący indeks przyśpiesza wykonanie instrukcji DELETE:
nigdy
zawsze
czasem +
220 Czy istniejący indeks przyśpiesza wykonanie instrukcji ROLLBACK:
nigdy +
zawsze
czasem
221 Czy istniejący indeks przyśpiesza wykonanie instrukcji COMMIT:
nigdy +
zawsze
czasem
222 Użycie których metod może spowodować zmniejszenie liczby przesłań między pamięcią wewnętrzną i zewnętrzną:
użycie perspektywy,
indeks na kolumnie klucza obcego, +
zwykły indeks oparty na B-drzewie dla kolumny o dwóch wartościach,
indeks bitmapowy na kolumnie zawierającej nazwiska klientów.
223 Użycie których metod może spowodować zmniejszenie liczby przesłań między pamięcią wewnętrzną i zewnętrzną:
zwiększenie liczby buforów, +
klaster, +
indeks bitmapowy na kolumnie zawierającej płeć klientów, +
wykonanie instrukcji SET TRANSACTION READ ONLY.
224 Użycie których metod może spowodować zmniejszenie liczby przesłań między pamięcią wewnętrzną i zewnętrzną:
dodatkowa tabela pomocnicza, +
indeks bitmapowy na kolumnie zawierającej płeć klientów, +
wykonanie instrukcji SET TRANSACTION READ ONLY,
zwykły indeks oparty na B-drzewie dla kolumny zawierającej nazwiska osób. +
225 Użycie których metod może spowodować zmniejszenie liczby przesłań między pamięcią wewnętrzną i zewnętrzną:
indeks bitmapowy na kolumnie zawierającej kraj, w którym mieszkają klienci, +
wykonanie instrukcji ANALYZE, +
wykonanie instrukcji SET TRANSACTION READ ONLY,