Upute za izradu domaćih zadaća

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, predaja i rokovi. 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. Priložite i rječnik podataka. Prva zadaća mora sadržavati propisanu dokumentaciju konceptualne i relacijske sheme uključujući i rječnik podataka. Također je poželjno dodati rečenicu ili dvije koje objašnjavaju čemu služi ta baza. Za pisanje teksta odnosno crtanje dijagrama možete koristiti bilo koji pogodni alat (MS Word, Paint, Visio itd.). 

 

Zadaća se predaje asistentu koji vam je držao vježbe, u obliku elektroničkog dokumenta (format word, pdf i slično) kao prilog u e-mailu. Adresa na koju treba poslati e-mail je helena.marcius@math.hr odnosno sebastijan.horvat@math.hr . Krajnji rok za predaju prve zadaće je 11.04.2025. Sačuvajte kopiju svojeg dokumenta jer će vam trebati za izradu druge zadaće.

 

·         Druga zadaćaradna okolina. Da biste mogli izraditi drugu zadaću trebate imati:

o   Korisničko ime i lozinku za pristup poslužitelju baze.math.hr

o   korisničko ime i lozinku za MySQL na tom poslužitelju

o   osobnu MySQL bazu na tom poslužitelju za koju imate ovlaštenja stvaranja i ažuriranja tablica.

 

Svim studentima Matematičkog i Fizičkog odsjeka automatski je omogućen pristup poslužitelju baze.math.hr preko sustava AAI. Dakle svakom studentu unaprijed je dodijeljeno korisničko ime na poslužitelju koje se poklapa s AAI imenom (preciznije, s dijelom AAI imena prije znaka '@'). Dakle to ime je oblika username.math odnosno username.phy. Lozinka na poslužitelju doslovno je ista kao u AAI.

 

Da biste dobili korisničko ime i lozinku za MySQL te osobnu MySQL bazu s odgovarajućim ovlaštenjima, trebate slijediti detaljnije upute koje se nalaze (ovdje). Postupkom koji je opisan u tim uputama stvorit će se MySQL ime i lozinka koji se poklapaju s onima za pristup poslužitelju (dakle onima iz AAI). Također, stvorit će osobna baza s odgovarajućim ovlaštenjima čije ime se izvodi iz korisničkog imena. Preciznije, ime baze je oblika username_math odnosno username_phy (primijetite da se umjesto točke sad pojavljuje znak '_').

 

Pristup osobnoj bazi obavlja se na slijedeći način. Služeći se nekim SSH klijentom (npr. PuTTY na Windows računalima) spojite se na poslužitelj baze.math.hr . Port koji trebate koristiti je 22 odnosno 2122, ovisno o tome spajate li se s računala unutar zgrade Matematičkog odsjeka ili izvan nje. Nakon unosa korisničkog imena i lozinke pojavit će se naredbeni redak operacijskog sustava Linux na poslužitelju. Također je dostupan radni direktorij na poslužitelju u koji po potrebi možete pohranjivati datoteke. Da biste pokrenuli MySQL, u Linux-ov naredbeni redak unesite naredbu mysql -p . Na temelju te naredbe MySQL će podrazumijevati da je vaše MySQL ime isto kao ime za pristup poslužitelju, no tražit će da ponovo unesete lozinku. Nakon unosa lozinke, trebao bi se pojaviti MySQL-ov naredbeni redak. U taj naredbeni redak unesite naredbu za spajanje na bazu oblika use username_math odnosno use username_phy. MySQL odgovara porukom database changed. Sada ste pristupili svojoj bazi i možete početi s radom.

 

  •   Druga zadaća – zadatak. Koristeći gore opisanu radnu okolinu te izvršavajući odgovarajuće SQL naredbe realizirajte u vašoj osobnoj MySQL bazi onu bazu koju ste opisali u prvoj zadaći. Realizirana baza mora imati barem tri tablice. Sve tablice zajedno moraju imati 40 ili više redaka. Da biste u MySQL bazu prebacili podatke s vašeg računala, služite se naredbom LOAD DATA – upute se nalaze (ovdje).

 

Dalje je potrebno pripremiti točno četiri upita od kojih:

    • barem tri moraju kombinirati podatke iz dviju ili više tablica;
    • barem jedan mora kombinirati podatke iz tri ili više tablica;
    • barem dva moraju sadržavati klauzulu GROUP BY;
    • barem jedan mora sadržavati ugniježđene SELECT naredbe.

 

Za svaki upit potrebno je pripremiti:

    • sam upit, tj. SQL naredbu;
    • opis što upit vraća, tj. što predstavlja tablica koju upit računa;
    • opis kako upit radi, tj. jedan mogući opis procesa na koji se može izračunati rezultat upita (izlazna tablica).

 

·         Druga zadaća – predaja i rokovi. Zadaća se predaje asistentu koji vam je držao vježbe u obliku pisanog izvještaja (format word, pdf, ascii i slično) kao prilog u e-mailu. Adresa na koju treba poslati e-mail je helena.marcius@math.hr odnosno sebastijan.horvat@math.hr . Krajnji rok za predaju druge zadaće je 13.06.2025.

 

Primjer ispravno sastavljenog izvještaja o zadaći nalazi se (ovdje). Primjer se odnosi na demo-bazu fakultet s kojom smo se upoznali na vježbama.