Kartka 1.1

1. Które z poniższych zdań w rachunku krotek relacji odpowiada przedstawionemu drzewu arytmetycznemu?

dochody

pracowni

zespoły

σnazwazesp=’DYSKI’

σkwota>1000

nrz

nrp

πdata_ur, nazwisko

a) {u(o.data_ur, p.nazwisko) |

(∃p) (∃z) (∃d) (pracowni (p) ∧ zespol (z) ∧ dochody (d) ∧ z.nazwazesp=’DYSKI’ ∧ d.kwota > 1000 ∧

z.nrz=p.nrz ∧ d.nrp=p.nrp)}

b) {t(data_ur, nazwisko) |

(∃p) (pracowni (p) ∧ t.nazwisko=p.nazwisko ∧ t.data_ur=p.data_ur ∧

(∃z) (zespol (z) ∧ z.nazwazesp = ‘DYSKI’ ∧ z.nrz=p.nrz ∧

(∃d) (dochody (d) ∧ d.kwota > 1000 ∧ d.nrp=p.nrp)))}

c) {t(data_ur, nazwisko) |

(∀p) (pracowni (p) ∧ t.nazwisko=p.nazwisko ∧ t.data_ur=p.data_ur ∧

(∀z) (zespol (z) ∧ z.nazwazesp=’DYSKI’ ∧ z.nrz=p.nrz ∧

(∀d) (dochody (d) ∧ d.kwota > 1000 ∧ d.nrp=p.nrp ))) }

d) {w(p.data_ur, p.nazwisko) |

(∃p) (∃z) (∃d) (pracowni (p) zespol (z) ∧ dochody (d) ∧ z.nazwazesp=’DYSKI’ ∧ d.kwota > 1000) }

Sugerowane odpowiedzi: 1 1 0 0

2. Dla tablicy postaci: prac(nrp, nazwisko, nrz) określ prawidłowe zapytanie w języku SQL: a) SELECT DESC(nrp) FROM prac GROUP BY nrz

b) SELECT COUNT(nrp) FROM prac GROUP BY nazwisko

c) SELECT nrz FROM prac GROUP BY nrp

d) SELECT nrz FROM prac GROUP BY nrp, nrz

Sugerowane odpowiedzi: 0 1 0 1

www.chomikuj.pl/MarWag987

3. Fraza SELECT w języku SQL

a) Nie może zawierać porównania kolumny ...?

b)?

c)może wystąpić po frazie ORDER BY

d) nie może wystąpić , jeżeli nie wystąpiła wcześniej fraza GROUP BY w tej instrukcji 4. W przypadku, gdy w diagramie ERD w notacji Chena występuje atrybut wielowartościowy, to po zastosowaniu algorytmu generacji schematów :

a) kluczem utworzonego schematu jest atrybut kluczowy encji(0)

b) tworzony jest dodatkowy schemat relacji, do którego wchodzi atrybut kluczowy encji i atrybut wielowartościowy (1)

c) nie powstaje dodatkowy schemat relacji, atrybut wielowartościowy wchodzi do schematu encji (0)

d) kluczem utworzonego schematu jest złożenie atrybutu kluczowego encji i atrybutu wielowartościowego(1)

5. Cechy modelu sieciowego:

a) wystąpienie rekordu może mieć wiele poprzedników w ramach jednego typu kolekcji (1) b) wystąpienie rekordu może mieć wiele poprzedników w ramach różnych typów kolekcji(0) c) można modelować związki M:N, 1:N (1)

d) w bazie są przechowywane 2 typy obiektów : dane i powiązania (1)

6. Funkcja agregująca może:

a) wystąpić po słowie SELECT (1)

b) zostać porównana z inną funkcją agregującą (1)

c) wystąpić we frazie HAVING (1)

d) wystąpić po frazie WHERE (0)

7. Dane są tabele (klucze są wyróżnione wielkimi literami)

prac(ID_PRAC,nazwisko,imie)

jezyki(ID_PRAC,ID_JEZYKA,stopien_znajomosci)

A oznacza zbiór wierszy będący wynikiem zapytania:

SELECT p.id_prac,p.nazwisko FROM prac p,jezyki j

WHERE p.id_prac = j.id_parac AND j.id_jezyka in (‘AN’,’NM’)

GROUP BY 1,2 HAVING count(*)>0;

B oznacza zbiór wierszy będący wynikiem zapytania :

SELECT distinct p.id_prac,p.nazwisko FROM prac p,jezyki j1,jezyki j2

WHERE p.id_prac=j1.id_prac AND j1.id_prac=j2.id_prac

AND (j1.id_jezyka=’NM’ OR j2.id_jezyka=’AN’);

Jeżeli zbiór A okazał się zbiorem niepustym to o zbiorach A i B możemy zawsze powiedzieć, że: a) część wspólna A i B jest zbiorem pustym (0)

b) A zawiera się w B (1)

c) Zbiór B jest zbiorem niepustym (1)

d) B zawiera się w A (1)

8. Dla schematu relacji R(A,B,C,D) spełniającego zależności AB->D,A->C, zależność A->C jest: a) zależnością tranzytywną (0)

b) dopuszczalna w trzeciej postaci normalnej(0)

c) zależnością redundancyjną w zbiorze zależności relacji R(0)

d) zależnością częściową (1)

PS .KOCIOLOO

(inny klucz odp. od 4 włącznie to:01011011111001110100)

www.chomikuj.pl/MarWag987

Kartka 1.3

9._________________________________________________________

0 a) odpowiadaja osobne tablice __________ się z klucza ____

0 b) odpowiadaja klucze encji ________lone tablicy __________

0 c) odpowiadaja klucze encji po sumach ___________ utworzonych

1 d) odpowiadaja osobno _____ o kluczu złożonym z kluczy łączonych encji 10. Do wyświetlenia w systemie FoxPro wyniku operacji projekcji na wyniku operacji selekcji wystarczy użyć:

0 1 a) DISPLAY ALL

0 1 b) SEEK, SKIP, SET FILTER i DISPLAY ALL

1 1 c) SET FILTER, SET FIELDS i LIST

1 0 d) LOCATE, DO WHILE/ENDDO, SET FIELDS i LIST

11.Polecenie SET SKIP TO <obszar 1> [,<obszar 2>,...] w systemie FoxPro: 0 a) realizuje dynamiczne połączenie relacji aktywnych w obszarze 1 i obszarze 2

0 0 b) pozwala na wybór bieżącego obszaru roboczego

1 0 c) powoduje przesunięcie wskaźnika w pliku bazy danych (otwartym w obszarze 1 lub 2...), zmieniając tym samym rekord, który jest rekordem bieżącym

1 1 d)jest uruchamiane po komendzie SET RELATION i służy do tworzenia powiązań typu 1:N

12.Relacja samochody jest wypełniona danymi.

Samochody (Nr_samochodu, Nadwozie, Marka, Uszkodzona_część, Kod_stopnia_uszkodzenia) Nr_samochodu Nadwozie

Marka Uszkodzona_część

Kod_stopnia_uszkodzenia)

2

Sedan

VW

Zderzak przednia

8

2

Sedan

VW

Lampa tylna lewa

3

2

Sedan

VW

Zawieszenie przednie 7

4

Sedan

VW

Lampa tylna lewa

11

5

Van

VW

Zderzak przedni

16

33

Van

VW

Zawieszenie tylne

8

33

Van

VW

Lapa tylna lewa

3

W powyższej relacji są spełnione następujące zależności funkcjonalne:

1 1 a) Nr_samochodu->Marka

0 0 b) Nr_samochodu->Kod_stopnia_uszkodzenia

0 0 c) Uszkodzona_część->Kod_stopnia_uszkodzenia

0 0 d) Marka->Nadwozie

13. Dane są następujące relacje (klucze wyrózniono dużymi literami)

PRACOWNI(NRP,nazwisko,imie,nrz)

TEMATY(NRT,nazwatemat,nrkt)

DOCHODY(nrp,nrt,kwota)

ZESPOLY(NRZ,nazwazesp,nrks)

W wyniku wykonania poniższego pytania w języku SQL:

Select nrkz From zespoly

Intersect

Select nrkt From tematy

www.chomikuj.pl/MarWag987

Otrzymano:

0 0 a) zbior numerow pracownikow będących kierownikami zespołów i nie będących kierownikami tematów

0 0 b) zbior numerow pracownikow będących kierownikami zespołów lub kierownikami tematów 0 0 c) zbior numerow pracownikow nie będących kierownikami zespołów, a bedących kierownikami tematów

1 1 d) zbior numerow pracownikow będących kierownikami zespołów, i jednocześnie kierownikami tematów

www.chomikuj.pl/MarWag987

Karta 1.4

14. W celu zoptymalizowania wyrażeń algebry relacji...... (nieczytelne ) ...... : 0 [1]

a) przenieść projekcje jak najwyżej w drzewie rozbioru i wykonac je łacznie z selekcjami i łączeniem

1 [1]

b) przenieść selekcje jak najwyzej w drzewie rozbioru wyrażeń

1 [0] c) projekcje wykonać po złączeniach (?) .............. niezbednych relacji 0 [0] d) przy wyborze kolejności selekcji jako.. ... ... ... ... ... ... .. atrybytach .. ... ..

15. W chcrarchucznym modelu danych:

0 [0] a) Można łatwo modelować związki M:N

1 [1]

b) przechowuje się dane i związki między nimi

1 [1]

c) można w prosty sposób modelować związki 1:N

0 [0]

d) każdy element może mieć wielu poprzedników

16. Dane są nastepujące relacje (klucze wyróżniono duzymi literami)

PROCOWNI (NRP, nazwisko, imię, nrz)

TEMATY (NRT, nazwisko, imię, nrz)

DOCHODY (nrp, nrt, kwota)

Zadanie wyrazone w postaci rachunku krotek relacji:

{ t(nazwisko, kwota) | ( E p) (Pracowni(p) ^ t.nazwisko = p.nazwisko ^ ( E d) (Dochody (d)^d.kwota>1000^d.nrp = p.nrp ^d.nrt =5 ^ t.kwota = d.kwota))} uwaga: E należy odbić w lustrze

☺

jest równoważne zapytaniu w języku SQL:

0 [0]

a) select nazwisko, sum(kwota)

from pracowni p, dochody d

where d.kwota > 1000 and d.nrt = 5 and p.nrp = d.nrp

0 [0]

b) select nazwisko, kwota

from pracowni p, dochody d

where d.kwota > 1000 and d.nrt = 5

0 [0]

c) select t.nazwisko, t.kwota

from pracowni p, dochody d

where d.kwota > 1000 and d.nrt = 5and p.nrt = d.nrt and t.nazwisko = p.nazwisko and t.kwota

= d.kwota

1 [1]

d) select nazwisko, kwota

from pracowni p, dochody d

where d.kwota > 1000 and d.nrt = 5 and p.nrp = d.nrp

17. W systemie FoxPro z indeksów korzystaja między innymi następujace instrukcje: 0 [0] a) SEEK, SET FILTER i GO TOP

0 [0] b) LOCATE, SET RELATION i SET FILTER

www.chomikuj.pl/MarWag987

0 [0]

c) SKIP, GO TOP i GO BATTOM

1 [1]

d) SEEK, SKIP i SET RELATION

18. Dla schematu relacji R (A, B, C, D) z zaleznością B -> C, można powiedzieć że AB -> C jest: 0 [ ] a) zależnościa wielowartościową

1 [0]

b) zależnościa tranzytywną

1 [1]

c) zależnością funkcyjną

1 [1]

d) zależnościa częściową

www.chomikuj.pl/MarWag987

Kartka 1.5

19. Zakładając, że istnieje fragment programu:

Dim mzb as Recordset

Set mzb = CurrentDB.OpenRecordSet("Dochody")

mzb. seek "=", 5

instrukcja mzb. seek "=", 5

a) przeniesie wskaźnik do rekordu, który w bieżącym polu ma wartość 5

b) wymaga wcześniejszego uaktywnienia właściwego indeksu

c) zmodyfikuja wartość bieżącego pola na wartość 5

d) spowoduje wygenerowanie błędu

Sugerowane odpowiedzi: 0 1 0 1

20. Wynik działania którego z poniższych zapytań jest odpowiedzą na pytanie:

„Proszę wypisać nazwy zespołów, w których łączny zarobek pracowników jest większy od maksymalnego pojedynczego zarobku dowolnego pracownika (ten maksymalny zarobek jest równy 200)”

Struktura danych:

Zespoly (NRZ, nazwazesp, kierownikzesp)

Tematy (NRT, nazwatem, kierowniktem)

Pracownicy (NRP, nazwisko, imie, adres, nrz)

Dochody (NRT, kwota, NRP)

e) SELECT nazwazesp FROM Zespoly, Pracownicy, Dochody

WHERE Zespoly.nrz=Pracownicy.nrz AND Pracownicy.nrp=Dochody.nrp AND

Dochody.kwota>200

GROUP BY Zespoly.nrz, Zespoly.nazwazesp ;

f) SELECT nazwazesp FROM Zespoly, Pracownicy, Dochody

WHERE Zespoly.nrz=Pracownicy.nrz AND Pracownicy.nrp=Dochody.nrp GROUP BY Zespoly.nrz

HAVING sum(kwota) > SELECT max(kwota) FROM Dochody; g) SELECT nazwazesp FROM Zespoly, Pracownicy, Dochody, Tematy WHERE Zespoly.nrz=Pracownicy.nrz AND Pracownicy.nrp=Dochody.nrp GROUP BY Zespoly.nrz, Zespoly.nazwazesp

HAVING sum(kwota) > 200 ;

h) SELECT nazwazesp FROM Zespoly, Pracownicy, Dochody

WHERE Zespoly.nrz=Pracownicy.nrz AND Pracownicy.nrp=Dochody.nrp GROUP BY Zespoly.nrz, Zespoly.nazwazesp

HAVING sum(kwota) > max(kwota) ;

Sugerowane odpowiedzi: 0 0 1 0 lub 0 1 1 0 || 0,0,1,1 (sprawdzone)

www.chomikuj.pl/MarWag987

Kartka 1

1. Do cech obiektowych baz danych można zaliczyć:

a) tożsamość obiektów

b) trudność w implementacji związków M:N

c) trudność przechowywania struktur hierarchicznych

d) konieczność zachowania pierwszej postaci normalnej (atomowe atrybuty) 2. Założenie klucz pierwotnego na sekwencji pól stworzonej uprzednio tablicy w systemie SQLBase nie powiedzie się jeżeli:

a) choć jedno z tych pól zawiera wartości unikalne

b) choć jedno z tych pól jest typu LONG

c) użytkownik dodający klucz nie jest właścicielem tabeli

d) pola są różnych typów

3. W oparciu o relacje:

PRACOWNIK(NRP,nazwisko,nrz)

DOCHODY(NRP,NRT,kwota)

TEMATY(NRT,nazwaTem,numKierT)

ZESPOLY(NRZ,nazwaZesp,numKierZ)

Została utworzona relacja uniwersalna.

Zapytanie

Select p.nrp,p.nazwisko

From pracownik p,dochody d

Where p.nrp=d.nrp and d.kwota <

(select dd.kwota from dochody dd, pracownik pp

where pp.nrp=dd.nrp and pp.nazwisko=’Kowalski’ and dd.nrt=10)

a) jest realizowalne ale przedstawiona baza wymaga podziału na acykliczne fragmenty b) nie jest możliwe do sformułowania w modelu relacji uniwersalnej

c) jest realizowalne w modelu relacji uniwersalnej i dla jego rozwiązania wystarczy użycie niepustej zmiennej zakresu

d) jest możliwe do sformułowania bez użycia zmiennych zakresu

4. Zwolnienie blokad w systemie Ingres następuje w chwili:

a) wycofania transakcji

b) stwierdzenia wystąpienia zakleszczenia przez SZBD

c) wykonaniu operacji DISCONNECT

d) po zakończeniu realizacji instrukcji, która spowodowała założenie tych blokad, a przed wykonaniem następnej instrukcji należącej do tej samej transakcji

5. Operacja pół-złączenia :

a) stanowi pełną metodę złączenia dwóch tabel w rozproszonych bazach danych b) nie wymaga żadnych przesyłów danych siecią

c) jest zawsze korzystniejsza od przesłania zawartości całej tabeli do węzła docelowego d) może służyć do scalenia fragmentów poziomych relacji

www.chomikuj.pl/MarWag987

Uwagi od przepisywacza:

1.W pierwszym pytaniu treść może być niedokładnie taka jak napisałem (nie widać na kserze) 2. Zaznaczone odpowiedzi podaję poniżej, żeby się nie sugerować:

1 – a

2 – b

3 – c

4 – a,c

5 – a

www.chomikuj.pl/MarWag987

Kartka 2

7. O agregacji (kompozycji) możemy mówić, gdy:

0 [0] a) atrybut A zwiera wskaźnik na klasę C

0 [0] b) atrybut A zwiera wskaźnik na obiekt będący wystąpieniem klasy C

0 [0] c) atrybut A zwiera zbiór wskaźników na obiekty, będące wystąpieniami pewnych klas 1 [1] d) obiekt posiada atrybut, będący wystąpieniem klasy C

8. Stosowanie replikacji:

0 [0] a) nie pozwala na stosowanie metody węzła centralnego do sterowania współbieżnym dostępem do kopii.

1 [1] b) komplikuje zagadnienie modyfikacji danych znajdujących się w kopiach 0 [0] c) wymaga użycia trójfazowego protokołu do wypełnienia transakcji

1 [1] d) zmniejsza podatność systemu na awarie

8. Następujący ciąg instrukcji w języku SQL jest równoważny podanym poniżej zapytaniom w języku QBE:

SELECT nrp FROM dochody

WHERE kwota > 1000

UNION ALL

SELECT nrp FROM dochody

WHERE nrt < 7;

0 [0] a) dochody

| nrt | kwota | nrp |

| <7 | >1000 | check |

1?[1] b) dochody

| nrt | kwota | nrp |

| | >1000 | check_x |

| <7 | | check_y |

0 [0] c) dochody

| nrt | kwota | nrp |

| | >1000 | check_x |

| <7 | | check_x |

0 [0] d) dochody

| nrt | kwota | nrp |

| | >1000 | check_x |

| <7 | | _y |

9. Czy poniższe zdania są prawdziwe w odniesieniu do języka Clipper?

1 [1] a) po zablokowaniu rekordu funkcją RLOCK() inni użytkownicy mogą czytać jego zawartość 1 [1] b) Rekord zablokowany funkcją RLOCK() może zostać odblokowany instrukcją UNLOCK

0 [0] c) Funkcja RLOCK() zwraca wartość .T. jeśli bieżący rekord jest już zablokowany 0 [0] d) Otwarcie pliku w trybie wyłącznym (EXCLUSIVE) jest równoważne zablokowaniu pliku funkcją FLOCK()

www.chomikuj.pl/MarWag987

11) Które z poniższych zapytan w QBE odpowiadaja podanemu w zadaniu:

{nazwisko|pracowni(X,Y,nazwisko) and (exist kwota) and dochody(z,kwota,x) and kwota>100 and (temat(BAZA,2))}

pracowni(nrp,kobieta,nazwisko)

dochody(nrz,kwota,nrp)

temat(nazwatem,nrt)

T a)temat |nazwatem|nrt| pracowni |nrp|kobieta|nazwisko| dochody |nrt|kwota|nrp|

|BAZA |_t | |_p |Y |check | |_t |>100 |_p |

N b)temat |nazwatem|nrt| pracowni |nrp |kobieta|nazwisko| dochody |nrt|kwota|nrp|

|BAZA |_t | Set |_p |Y |_n | Set |_t |>100 |_p |

|only _p| | |

T c)temat |nazwatem|nrt| pracowni |nrp |kobieta|nazwisko| dochody |nrt|kwota|nrp|

|BAZA |_t | Set |_p |Y | | Set |_t |>100 |_p |

|only _p| |check |

N d)temat |nazwatem|nrt| pracowni |nrp|kobieta|nazwisko | dochody |nrt|kwota|nrp|

|BAZA |_t | |_p |Y |checkgroupby _n | |_t |>100 |_p |

12) Strategia blokowania wedlug hierarchii klas:

T a) sluzy do unikania zakleszczen

N b) stosowana jest wylacznie w obiektowych bazach danych

N c) umozliwia wykrywanie zakleszczen

N d) stosowana jest do budowy grafu oczekiwania

13) Blokada wzajemna to zdarzenie

N a) ktoremu zapobiega dowolna strategia blokowania oparta na dwufazowym protokole blokowania N b) ktore nie moze byc przyczyna wycofania transakcji

N/Tc) do ktorego nie moze dojsc w rozproszonej bazie danych

T d) ktore moze byc przyczyna zdjecia blokad

14) Jezeli przez X oznaczymy zbior atrybutow wystepujacych w pytaniu zadawanym w systemie relacji uniwersalnej, to mozemy zawsze powiedziec, ze:

T a) zbior X jest uwzgledniany w procesie hipergrafu

N b) X musi calkowicie zawierac sie w jednym fragmencie bazy

N c) X nie moze zawierac atrybutow kluczowych

T d) atrybuty ze zbioru X moga dotyczyc wiecej niz jednego fragmentu (tzn. czesciowo zawierac sie w jednym a czesciowo w innym)

15) Czy mozna w systemie FoxBASE:

T/N a) zawsze zalozyc blokade pliku otworzonego wczesniej w trybie dzielonym, wywolujac funkcje FLOCK(), jesli rekordy pliku sa blokowane przez inna aplikacje

www.chomikuj.pl/MarWag987

N b) zawsze zalozyc blokade pliku, otworzonego wczesniej w trybie dzielonym, jesli udalo sie wczesniej zalozyc blokade rekordu

T c) zalozyc blokade pliku otworzonego wczesniej w trybie wylacznym, wywolujac funkcje FLOCK() T d) zawsze zalozyc blokade rekordu jesli udalo sie wczesniej zalozyc blokade pliku

www.chomikuj.pl/MarWag987

KASIA

1.W systemir Ingres w procedurze bazy danych obsługującej zdarzenie opisane przez daną regułę: (1) można spowodować uaktywnienie inne reguły

(0) nie da się wycofać skutków instrukcji, która wywołała to zdarzenie

(0) można stosować wyłacznie parametry o wartościach typu całkowitego

(0) nie wolno modyfikować zawartości tabel innych niż tabela, dla której wystąpiło zdarzenie opisane przez tą regułę

2. Polimorfizm to:

(0) ukrywanie danych przed użytkownikiem

(0) określenie własności obiektów przez zestaw atrybutów, który jest odpowiednio dobrany z nadklasy (0) synonim enkapsulacji

(1) modyfikacja metod dziedziczonych z ndaklasy bez zmiany ich nazwy

3. Które z komend systemu FoxBASE powodują zdjęcie blokady rekordu, założonej wcześniej w tej samej aplikacji poprzez wywołanie rlock():

(1) UNLOCK

(1) USE

(0) REPLACE ALL <atrybut> WITH <wyrażenie>

(0) REPLACE <atrybut> WITH <wyrażenie>

4.Zaznaczenie pola znacznikiem CHECK w języku QBE umożliwia:

(1) włączenie do tabeli Answer tylko unikalnych wartości zaznaczonego pola (posortowanych w porządku rosnącym)

(1) podzielenie rekordów na grupy bazując na zawartości zaznaczonego pola(np.jeśli w tej samej linii co znacznik CHECK pojawi się operator agregujący)

(0) wyświetlenie wszystkich , również powtarzających się, wartości zaznaczonego pola (0) włączenie pola do definiowanego zbioru

nie wiem czy prawidłowo odczytałam odpowiedzi

www.chomikuj.pl/MarWag987