Primjeri 1 a U emu je razlika izmeu

  • Slides: 16
Download presentation
Primjeri

Primjeri

1. a) U čemu je razlika između nadključa i kandidatskog ključa ? b) Data

1. a) U čemu je razlika između nadključa i kandidatskog ključa ? b) Data je relacija r(A B C D) a 1 b 1 c 2 d 1 a 1 b 1 c 1 d 2 a 2 b 1 c 1 d 3 a 1 b 3 c 2 d 1 Prema sadržaju relacije odredite sve kandidatske ključeve (kandidate za primarni ključ) ove relacije.

Rješenje: a)Podskup atributa putem koga se jednoznačno može odrediti entiteti u skupu entiteta naziva

Rješenje: a)Podskup atributa putem koga se jednoznačno može odrediti entiteti u skupu entiteta naziva se nadključ (super ključ) tog skupa entiteta. Formalno gledano, nadključ se može definisati kao grupa atributa datog skupa entiteta, koja omogućava jednoznačno preslikavanje entiteta iz datog skupa na Dekartov proizvod domena tih atributa. Koncept nadključa nije dovoljan za naše potrebe. Nas interesuje onaj najmanji nadključ koji ne sadrži suvišne atribute. Takav nadključ se naziva kandidatski ključ. On omogućava jednoznačno preslikavanje sa skupa entiteta na Dekartov proizvod domena tih atributa i nijedan pravi podskup tog skupa atributa nema tu osobinu. b) Kandidatski ključevi relacije su: ABC i BD

2. Relacije isporučuje i artikli predstavljeni su tabelama ispod. a) Prema sadržaju tabela podvucite

2. Relacije isporučuje i artikli predstavljeni su tabelama ispod. a) Prema sadržaju tabela podvucite atribute koji čine primarni ključ ovih tabela. b) Prema sdržaju tabele isporučuje definišite kardinalni broj ovog skupa odnosa. c) Predstaviti odgovarajućom tabelom relaciju isporučuje X artikli.

Rešenje: a)Podvučeno u tabelama. b)Kardinalni broj ovog skupa odnosa je: n: m c)Tabela je:

Rešenje: a)Podvučeno u tabelama. b)Kardinalni broj ovog skupa odnosa je: n: m c)Tabela je:

3. Navedite osnovne prednosti relacionog modela. Rešenje: Relacioni model ima jasno definisanu osnovnu informacionu

3. Navedite osnovne prednosti relacionog modela. Rešenje: Relacioni model ima jasno definisanu osnovnu informacionu strukturu (relaciju) koja omogućava korišćenje matematičkih formalizama u postupku projektovanja. Osim, toga sadrži i jasno definisane operatore za postavljanje upita bazi, koristeći neki od upitnih jezika.

4. Dio baze podataka željezničke kompanije je predstavljen E-R dijagramom. Dopuniti E-R dijagram tako

4. Dio baze podataka željezničke kompanije je predstavljen E-R dijagramom. Dopuniti E-R dijagram tako da baza podataka sadrži podatke o voznom redu (kada određena linija dolazi tj. polazi sa neke stanice i na kom kolosjeku) kao i o tome koji zaposleni čine posadu voza na određenoj liniji (mašinovođa, pomoćnik, kondukteri…).

Rešenje: Nacrtano na E-R dijagramu u obliku skupa odnosa posada sa atributima DATUM_P i

Rešenje: Nacrtano na E-R dijagramu u obliku skupa odnosa posada sa atributima DATUM_P i skupa odnosa vozni_red sa atributima DOLAZAK, POLAZAK, KOLOSJEK.

5. Za bazu podataka iz zadatka 4 sledeće upite izraziti preko relacione algebre i

5. Za bazu podataka iz zadatka 4 sledeće upite izraziti preko relacione algebre i SQL-a. a) Naći vozove koji će saobraćati na liniji broj 112/3 za period od 1. 4. 1999 do 30. 4. 1999. b) Naći sve zaposlene koji rade na stanici Sutomore c) Naći kolosjek, vrijeme dolaska i polaska voza na liniji 111/4 u stanici Mojkovac. d) Naći ime i prezime mašinovođe koji upravlja vozom na liniji 111/4. e) Sezonska linija broj 88/5 je ukinuta. Ažurirati bazu podataka.

 BR_VOZA( DATUM <30. 4. 1999 . BR_LINIJE=’ 112/3’ DATUM>1. 4. 1999 (vozi_na)) SELECT

BR_VOZA( DATUM <30. 4. 1999 . BR_LINIJE=’ 112/3’ DATUM>1. 4. 1999 (vozi_na)) SELECT BR_VOZA FROM vozi_na WHERE BR_LINIJE=’ 112/3’AND DATUM BETWEEN 01. 04. 1999. AND 30. 04. 1999;

 MLBZ, IME_I_PR(zaposleni radi_u NAZIV=’Sutomore’(stanice)) SELECT MLBZ, IME_I_PR FROM zaposleni Z, radi_u R, stanice

MLBZ, IME_I_PR(zaposleni radi_u NAZIV=’Sutomore’(stanice)) SELECT MLBZ, IME_I_PR FROM zaposleni Z, radi_u R, stanice S WHERE Z. MLBZ=R. MLBZ AND R. BR_ST=S. BR_ST AND S. NAZIV=’Sutomore’;

 KOLOSJEK, DOLAZAK, POLAZAK ( NAZIV=’Mojkovac’(stanice) vozni_red) SELECT FROM WHERE KOLOSJEK, DOLAZAK, POLAZAK stanice

KOLOSJEK, DOLAZAK, POLAZAK ( NAZIV=’Mojkovac’(stanice) vozni_red) SELECT FROM WHERE KOLOSJEK, DOLAZAK, POLAZAK stanice S, vozni_red V S. BR_ST=V. BR_ST AND S. NAZIV=’Mojkovac’ AND V. BR_LINIJE=“ 111/4”;

 IME_I_PR( BR_LINIJE=’ 111/4’ (posada) zaposleni ZVANJE=’Mašinovođa’ (radi_u)) SELECT FROM WHERE IME_I_PR posada P,

IME_I_PR( BR_LINIJE=’ 111/4’ (posada) zaposleni ZVANJE=’Mašinovođa’ (radi_u)) SELECT FROM WHERE IME_I_PR posada P, zaposleni Z, radi_u R P. MLBZ=Z. MLBZ AND Z. MLBZ=R. MLBZ AND P. BR_LINIJE=’ 111/4’ AND R. ZVANJE=’Mašinovođa’;

DELETE FROM vozi_na WHERE BR_LINIJE=’ 88/5’; DELETE FROM vozni_red WHERE BR_LINIJE=’ 88/5’; DELETE FROM

DELETE FROM vozi_na WHERE BR_LINIJE=’ 88/5’; DELETE FROM vozni_red WHERE BR_LINIJE=’ 88/5’; DELETE FROM posada WHERE BR_LINIJE=’ 88/5’; DELETE FROM linije WHERE BR_LINIJE=’ 88/5’;