Kodulehed
Valitud koduleht: [368] - Andmebaasid I (IDU0220) (kevad 2018)
Üldist
Materjalid
Vaated materjalidele
Tudeng
Abi
Mitmesugust
TähtaegKirjeldus
02.02.2018 Taotluste esitamise tähtaeg selles keskkonnas, kui soovite juurdepääsu Microsoft Imagine keskkonnale (kellel seda veel ei ole)(sealtkaudu saab muuhulgas tarkvara MS Access) 
05.02.2018 Enne teise nädala harjutustundide algust võiks olla kasutatava tarkvara (MS Access, CASE vahend) oma sĂĽlearvutisse installeeritud. 
05.02.2018 Vaadata ĂĽle slaidid alates slaidist 141 kuni slaidikomplekti lõpuni kataloogis Teooria testideks (vahetestid, eksam) valmistumine olevas failis SQL-andmebaaside ja nende projekteerimise põhimõisteid Ei tee paha, kui jõuaksite ka vaadata slaide 1-85. 
08.02.2018 Kell 17.00 – semestri õpingukava esitamise tähtaeg majandus - ja infotehnoloogia teaduskonna ĂĽliõpilastele  
09.02.2018 Iseseisva töö teema registreerimine 
12.02.2018 Lugeda mõttega läbi muster "Põhiolemite hetkeseisundi registreerimise vajadus". Leiate selle kataloogist Iseseisva töö projekti tegemine/Juhendid failist Juhend, mis annab lihtsal näitel põhineva ĂĽlevaate projekti põhilistest tulemustest (mudelid, SQL-andmebaas, rakendus)
12.02.2018 Kell 17:00 - õppeainetele registreerumise tähtaeg avatud ĂĽlikooli õppuritele 
02.03.2018 Taotluste esitamise tähtaeg selles keskkonnas, kui soovite juurdepääsu Microsoft Imagine keskkonnale (kellel seda veel ei ole)(sealtkaudu saab muuhulgas tarkvara MS Access) 
27.02.2018-02.03.2018 Esimene vabatahtlik lisapunktide test 
13.02.2018-02.03.2018 Iseseisva töö tegemine harjutustundides  
12.03.2018 Lugeda mõttega läbi muster "Põhiolemite hetkeseisundi registreerimine SQL-andmebaasis". Leiate selle kataloogist Iseseisva töö projekti tegemine/Juhendid failist Juhend, mis annab lihtsal näitel põhineva ĂĽlevaate projekti põhilistest tulemustest (mudelid, SQL-andmebaas, rakendus)
20.03.2018-23.03.2018 Teine vabatahtlik lisapunktide test 
25.03.2018 Kuupäev, peale midagi ei saa projekti tegija liituda olemasoleva rĂĽhmaga (kaks ĂĽliõpilast), et nende projekti edasi teha. Endiselt on lubatud projektist eraldumine ja projekti ĂĽksinda tegemine, projekti liikme projektist väljaarvamine teiste liikmete poolt ning samuti kahe või kolme ĂĽksinda projekti tegija ĂĽheks tegijate rĂĽhmaks liitumine. 
02.04.2018 Lugeda mõttega läbi muster "Põhiolemite seisundimuudatuste võimaldamine graafilises kasutajaliideses". Leiate selle kataloogist Iseseisva töö projekti tegemine/Juhendid failist Juhend, mis annab lihtsal näitel põhineva ĂĽlevaate projekti põhilistest tulemustest (mudelid, SQL-andmebaas, rakendus)
08.04.2018 Pannakse paika lävend, mille ĂĽletamisel saab SQL kontrolltöö automaatselt hindeks 5 
06.03.2018-13.04.2018 SQLi harjutamine harjutustundides 
13.04.2018 Taotluste esitamise tähtaeg selles keskkonnas, kui soovite juurdepääsu Microsoft Imagine keskkonnale (kellel seda veel ei ole)(sealtkaudu saab muuhulgas tarkvara MS Access). Peale selleks tähtaja toimunud taotluste edastamist toimub järgmine 2018. aasta sĂĽgisel. 
16.04.2018 Tähtaeg andmaks teada oma mitteosalemisest 12nda nädala kontrolltööl. See annab võimaluse kasutada A4 abimaterjalide lehte 16nda nädala järeltööl. Selleks teatamiseks tuleb ennast registreerida Mauruses selleks otstarbeks loodud teadmiste kontrollile
17.04.2018-20.04.2018 SQL kontrolltöö 
29.01.2018-20.04.2018 Periood, mille jooksul projekti eest arvestuse saamine tähendab lõpphinde arvutamise valemis kordajat 1.3. Projekti näitamiseks tuleb tulla minu vastuvõtuajale.

Kordaja 1.3 on neile väga kiiretele ĂĽliõpilastele, kes saavad sisuliselt projekti veatult valmis enneaegselt - projektide vaatamise periood, kui kõik harjutustunnid ja lisaajad on sellele ĂĽlesandele pĂĽhendatud, algab 13. õppenädalal (siis on kordaja 1.2) ja kestab kuni 12. juunini. Ma ei oska prognoosida varakult näidata soovijate hulka, kuid vabade vastuvõtuaegade pärast on vaja konkureerida ĂĽle 100 projektiga (aines on 250 ĂĽliõpilast). Seega kes ees, see võitja. 

24.04.2018-04.05.2018 Periood, mille jooksul projekti eest arvestuse saamine tähendab lõpphinde arvutamise valemis kordajat 1.2 
24.04.2018-16.05.2018 Periood, mille jooksul kõik harjutustunnid on pĂĽhendatud iseseisvate tööde ĂĽlevaatamisele. 
17.05.2018-18.05.2018 SQL kontrolltöö esimene järeltöö 
08.05.2018-18.05.2018 Periood, mille jooksul projekti eest arvestuse saamine tähendab lõpphinde arvutamise valemis kordajat 1.1 
29.05.2018 SQL kontrolltöö teine järeltöö 
21.05.2018-01.06.2018 Periood, mille jooksul projekti eest arvestuse saamine tähendab lõpphinde arvutamise valemis kordajat 1.0 
11.06.2018 SQL kontrolltöö kolmas järeltöö 
12.06.2018 Kõige viimane päev, kui 2017/2018 õppeaasta kevadsemestril saab näidata iseseisvat tööd e projekti 
24.04.2018-12.06.2018 Iseseisvate tööde ĂĽlevaatamise periood. Tööd võib esitada ja ette näidata ka varem - õppejõu vastuvõtuaegadel. Töö arvestuse saamise aeg mõjutab lõpphinnet - mida varem, seda parem hindele.  
12.06.2018 Viimane eksam käesoleval semestril 
04.06.2018-12.06.2018 Periood, mille jooksul projekti eest arvestuse saamine tähendab lõpphinde arvutamise valemis kordajat 0.9 
Andmebaasid I Andmebaasid I (IDU0220)

Eesmärk: Anda teadmisi relatsiooniliste- ja SQL-andmebaaside põhimõtetest ning teadmisi ja oskuseid andmebaasikeelest SQL ning tehingutöötluse SQL-andmebaaside projekteerimisest.

Õpiväljundid:

  • 1. Teab relatsioonilist andmemudelit.
  • 2. Teab andmebaasikeele SQL kasutusvõimalusi ja puudusi.
  • 3. Teab tehingutöötluseks mõeldud SQL-andmebaaside kontseptuaalse, loogilise ja füüsilise projekteerimise meetodeid.
  • 4. Teab algtasemel andmebaasisüsteemide ülesehtitust ja funktsionaalsust.
  • 5. Oskab tükeldada andmekeskset tehingutöötlusele orienteeritud infosüsteemi allsüsteemideks.
  • 6. Oskab projekteerida tehingutöötlusele orienteeritud SQL-andmebaasi ning koostada süsteemi prototüüpi, kasutades selleks UML keelt, CASE vahendit ja vabalt valitud andmebaasisüsteemi/rakenduse loomise vahendit.
  • 7. Oskab kasutada SQL andmebaasikeelt päringute ja andmemuudatuste läbiviimiseks andmebaasis ning andmebaasi struktuuri (tabelite) ja käitumise (tabelitega seotud deklaratiivsete kitsenduste) loomiseks.

Hindamiskriteeriumid:

  • Õpiväljundite 2, 7 kontrollimine - Kontrolltöö; eksamieeldus.
  • Õpiväljundite 3, 5, 6 kontrollimine - Iseseisev töö - andmebaasi projekteerimine ja prototüüpimine; eksamieeldus.
  • Kõikide õpiväljundite kontrollimine - Teoreetiliste ja praktiliste küsimustega kirjalik (veebipõhine) test e eksam.

Lävendi ületamiseks on vajalik saada iseseisva töö eest arvestus ning nii SQL kontrolltöö kui ka eksami eest vähemalt hinne 1.

lõpphinne = Ümarda ja kärbi((a*0.6 + b*0.4)*c)

Ümardamise näide: 4.4 => 4; 4.5 => 5
Kärpimine tähendab, et kui valemi järgi tuleb hinne üle viie, siis taandatakse see hindeks viis.

a - SQL kontrolltöö hinne

  • 0-50 punkti hinne 0
  • 51-60 punkti hinne 1
  • 61-70 punkti hinne 2
  • 71-80 punkti hinne 3
  • 81-90 punkti hinne 4
  • 91-... punkti hinne 5

Märkused:

  • Harjutustundides 2, 6-11 toimub SQL ülesannete lahendamine, mis annab lisapunkte SQL kontrolltööle. Kõik punktide arvuga teatud lävendi ületanud üliõpilased saavad kontrolltöö hindeks automaatselt 5, st ei pea kontrolltööd tegema. Lävend sõltub kursuse tasemest ja määratakse kindlaks kümnenda õppenädala lõpuks.
  • Kontrolltöö ülesannete lahendamise eest saadav võimalik maksimaalne punktisumma on 100.
  • Semestri harjutustundides kogutud SQL lisapunktid lähevad kontrolltöö hinde arvutamisel arvesse põhitööl (12ndal õppenädalal) ja esimesel järeltööl (16ndal õppenädalal).
  • SQLi kontrolltöö hinne kehtib ainult saamise semestril. Seega uuesti deklareerides tuleb SQLi kontrolltöö uuesti teha või saada tulemus lisapunktidega.
  • Lisapunktid lähevad arvesse ainult saamise semestril.

b - eksami hinne

  • 0-50 punkti hinne 0
  • 51-60 punkti hinne 1
  • 61-70 punkti hinne 2
  • 71-80 punkti hinne 3
  • 81-90 punkti hinne 4
  • 91-... punkti hinne 5

Märkused:

  • Eksami küsimustele vastamise eest saadav võimalik maksimaalne punktisumma on 100. Eksami testis on 25 küsimust, iga õige vastus annab neli punkti. Eksamile on võimalik lisapunktide testidega kaasa võtta kuni 20 lisapunkti.
    • Viiendal õppenädalal harjutustunnis toimuv lisapunktide test võimaldab eksamile juurde saada kuni 10 punkti. Testis on kümme küsimust, iga õige vastus annab ühe punkti.
    • Kaheksandal õppenädalal harjutustunnis toimuv lisapunktide test võimaldab eksamile juurde saada kuni 10 punkti. Testis on kümme küsimust, iga õige vastus annab ühe punkti.
  • SQL lisapunktid, mis ületavad kümnenda õppenädala lõpuks määratavat SQL lisapunktide lävendit (lävendi ületamine annab SQL kontrolltöö hindeks automaatselt 5), lähevad eksami lisapunktideks.
  • Eksami hinne kehtib ainult saamise semestril. Seega uuesti deklareerides tuleb eksam uuesti teha.
  • Lisapunktid lähevad arvesse ainult saamise semestril.

c - iseseisva töö projekti kordaja

Kui iseseisva töö projekt arvestatakse:

  • 1-12 õppenädalal, siis 1.3
  • 13-14 õppenädalal, siis 1.2
  • 15-16 õppenädalal, siis 1.1
  • 17-18 õppenädalal (eksamisessioon), siis 1.0
  • 19-20 õppenädalal (eksamisessioon), siis 0.9

Märkused:

  • Varasematel semestritel saadud projekti arvestused kehtivad. Hindamisel kasutatav kordaja määratakse kindlaks vastavalt jooksval semestril kehtivatele reeglitele.

Lävend

  • Kui a väätus puudub või a=0, siis eksamit tegema ei pääse ja lõpphinnet ei saa.
  • Kui c väätus puudub (projekt arvestamata), siis eksamit tegema ei pääse ja lõpphinnet ei saa.
  • Kui b=0, siis on lõpphinne 0.

Teemad: Andmebaas. Andmebaasisüsteem. Andmemudelid. Relatsiooniline andmemudel. Relatsioonialgebra. SQL andmebaasikeel ja selle abil loodavad andmebaasiobjektid. Tehingutöötluseks mõeldud SQL-andmebaasi projekteerimise võimalik metoodika. Strateegiline analüüs. Detailanalüüs. Olemi-suhte diagrammid ja nende loomine UMLi abil. Andmete modelleerimise mustrid. Normaliseerimine. Denormaliseerimine. Transaktsioonilise SQL-andmebaasi loogiline ja füüsiline disain. CASE vahendi kasutamine SQL-andmebaasi projekteerimiseks. Harjutustundides kasutatakse töölaua andmebaasisüsteemi MS Access.

Siit võite vaadata teemade mõistekaarte

Märkus: Selle õppeaine edukaks läbimiseks ei ole mitte mingit kohustust ega vajadust ühtegi järgnevatest allikatest lehitseda ega lugeda. Õppeaine edukaks sooritamiseks on piisav, kui õppida sellel kodulehel olevate materjalide alusel.

Siiski pakun välja kursuse põhiteemade kaupa ühe võimaliku kombinatsiooni raamatutest, mida sügavama huvi korral lugeda. Mõned nendest raamatutest on e-raamatud, mida saab lugeda Tallinna Tehnikaülikooli raamatukogu kaudu. Siin on informatsioon, kuidas pääseb nendele raamatutele ligi väljastpoolt Tallinna Tehnikaülikooli võrku.

  • SQL: Head First SQL (e-raamat Tallinna Tehnikaülikooli raamatukogu kaudu) või SQL Queries for Mere Mortals.

    Siit saab downloads saki alt "SQL Queries for Mere Mortals" raamatu jaoks näidistabelitega andmebaasid, mis sisaldavad ka Queridena ära salvestatud ülesannete lahendusi.

    Suur tänu üliõpilasele, kes "SQL Queries for Mere Mortals" raamatut soovitas. Ta kirjutas: "Tekst on konkreetne, seletused tõhusad. Õpikut pole koormatud lisainfot sisaldavate artiklitega nagu mõnedel ingliskeelsetel õpikutel standardiks (nõnda on lihtsam tekstile keskenduda). Iga SQL süntaksiga tegeleva peatüki lõppu paigutatud ülesanded aitavad materjali kinnistada. Parima tulemuse jaoks võiks tudeng ka Sample Statements sektsioonides püstitatud ülesandeid lahendada üritada (enne ülesannete juurde asumist). Pärast Access'is SQL Server Compatible Syntax'i kasutuselevõttu võivad mõned näidisandmebaasides valmis kirjutatud päringud vajada ümber kirjutamist, kuid see vast pole mitte kellegi jaoks üle jõu."

    Minult on küsitud Head First sarja ja Head First SQL raamatu kohta. Oskan öelda, et see raamat on kirjutatud omapärase stiilis ning huumorit kasutades. Leian, et seda saab SQLiga esmatutvuse tegemiseks väga edukalt kasutada. Näiteks lk 44 on hea kirjeldus NULLi olemusest.

    Samas on raamatus ka ebatäpseid väiteid. Näiteks väide "A database is a container that holds tables and other SQL structures related to those tables" jätab lugejale vale mulje, et tabelid on ainsad võimalikud andmebaaside ehitusplokid. Tegelikult see nii ei ole ja on palju erinevaid andmemudeleid, mis pakuvad kasutamiseks erinevaid andmebaaside ehitusplokke. Õigem oleks öelda "A SQL database is a container that holds tables and other SQL structures related to those tables".

  • Relatsiooniline mudel: Database in Depth (e-raamat Tallinna Tehnikaülikooli raamatukogu kaudu) või An Introduction to Relational Database Theory
  • Tehingutöötluse SQL-andmebaaside kavandamine: Andmebaaside projekteerimine ja SQL Antipatterns (Kellele meeldib raamatut peos hoida, see leiab antimustrite raamatu ka Tallinna Tehnikaülikooli raamatukogust.).

Lisaks, kui tahate meelde tuletada käesoleva aine eelduseid, siis lugege raamatut UMLi kontsentraat. 3. redaktsioon. Objektmodelleerimise standardkeele UML2.0 lühijuhend.

Eraldi tõstan esile ja soovitan raamatut Building the agile database : how to build a successful application using agile without sacrificing data management. Kui seda andmebaaside kursuste ajal või järel loete, siis peaksid paljud seal kirjeldatavad põhimõtted Teile andmebaaside ainetest tuttavad olema. Loodan, et selle raamatu lugemine annab Teile kinnitust ja julgustust, et nende jälgimine on mõistlik, võimalik ja kasulik ka tänapäeva moodsa agiilse (paindliku) süsteemiarenduse käigus.

Raamatus palju käsitlemist leidev loogiline andmemudel on sisuliselt sama kui andmebaaside ainetes käsitletud detailne kontseptuaalne andmemudel.

Rõhutan, et see on ainult üks, kuid sugugi mitte ainus võimalik kombinatsioon. Häid raamatuid on hulgaliselt ja paljud nendest on ka Teile kättesaadavad.

Õppejõud: dotsent Erki Eessaar
meiliaadress: Erki.Eessaar(ät)taltech.ee