Zadaće

Svaki student treba izraditi svoju bazu podataka. Uz nju će biti vezane domaće zadaće. Temu baze student bira po volji, ali baza mora imati nekog smisla. Također, baza mora sadržavati barem 3 entiteta i barem 2 veze.

 

·        Prva zadaća - zadatak. Po uzoru na Poglavlje 2 iz knjige oblikujte i dokumentirajte konceptualnu shemu za svoju bazu podataka. Dakle nacrtajte reducirani Chen-ov dijagram (entiteti, veze, kardinalnosti veza) te sastavite popratni tekst (atributi za svaki entitet odnosno vezu, primarni ključ za svaki entitet). Nakon toga, po uzoru na Poglavlje 3 iz knjige, konceptualnu shemu pretvorite u relacijsku shemu te je dokumentirajte služeći se tekstualnim prikazom.

Prva zadaća mora sadržavati propisanu dokumentaciju konceptualne i relacijske sheme. Također je poželjno uključiti rečenicu ili dvije koje objašnjavaju o čemu je baza. Zadaća se predaje asistentu koji vam je držao vježbe, u obliku elektroničkog dokumenta (word, pdf i slično) kao prilog u e-mailu. Adresa na koju treba poslati e-mail je marko.horvat@math.hr odnosno luka.mikec@math.hr. Krajnji rok za predaju prve zadaće je 22. travnja 2020. Sačuvajte kopiju svojeg dokumenta jer će vam trebati za izradu druge zadaće.

 

Druga zadaća – radna okolina i rokovi. Da biste mogli izraditi drugu zadaću trebate imati svoju osobnu MySQL bazu i sva prava stvaranja i ažuriranja tablica u njoj. Takva baza već vam je automatski stvorena na poslužitelju online.math.hr. Možete joj pristupiti preko sučelja https://online.math.hr/sql/. Riječ je o istom sučelju koje koristimo u nastavi i koje također omogućuje pristup do demo-baze „fakultet“. Da biste došli do osobne baze, kliknite na odgovarajući gumb na gornjem dijelu prozora. Zatim pišite i izvršavajte SQL naredbe. Ako prilikom izvršavanja naredbe niste prijavljeni u chat koji koristimo za vježbe, dobit ćete poruku da je potrebno prijaviti se. To možete učiniti u bilo kojem trenutku preko sučelja https://online.math.hr. Jednom kad ste prijavljeni (ulogirani) u chat, korištenje baze funkcionira neovisno o tome je li chat otvoren u pregledniku ili nije. Da biste u osobnu bazu prebacili podatke s vašeg računala, služite se naredbom LOAD DATA – upute se nalaze (ovdje).

Rok za predaju druge zadaće je ponedjeljak 25. svibnja 2020. 23:59. Za predaju kliknite na odgovarajući gumb u sučelju za SQL te dalje slijedite upute u prozoru koji će se otvoriti. Na kraju nemojte zaboraviti spremiti zadaću. Prije roka za predaju možete spremiti i radnu verziju zadaće te tražiti provjeru njezine ispravnosti. Nakon roka za predaju bodovat će se posljednja spremljena verzija.

  • Druga zadaća – zadatak. Koristeći gore opisanu radnu okolinu realizirajte bazu koju ste opisali u prvoj zadaći. Baza mora imati barem tri tablice te barem jedna tablica mora imati 20 ili više redaka. Potrebno je pripremiti točno četiri upita od kojih:

o   barem tri moraju kombinirati podatke iz dviju ili više tablica;

o   barem jedan mora kombinirati podatke iz tri ili više tablica;

o   barem dva moraju sadržavati klauzulu GROUP BY;

o   barem jedan mora sadržavati ugniježđene SELECT naredbe;

Za svaki upit potrebno je pripremiti:

o   sam upit, tj. SQL naredbu;

o   opis što upit vraća, tj. što predstavlja tablica koju upit računa;

o   opis kako upit radi, tj. jedan mogući opis procesa na koji se može izračunati rezultat upita (izlazna tablica).

Izbjegavajte pretjeranu sličnost sa zadacima s vježbi. Kad opisujete što upit vraća, izbjegavajte tehničke pojmove poput “Kartezijev produkt”, “n-torka”, “strani ključ” itd. Opišite tablicu koju upit računa na način na koji biste ju opisali nekome tko ne zna ništa o SQL-u.

Primjer ispravno sastavljene zadaće nalazi se (ovdje)