Andmebaasid, MTAT loeng Normaalkujud

Seotud dokumendid
Relatsiooniline andmebaaside teooria II. 6. Loeng

Microsoft Word - Errata_Andmebaaside_projekteerimine_2013_06

E-R mudel

Eksam õppeainetes "Andmebaasid I" (IDU0220) ja "Andmebaaside projekteerimine" (IDU3381)

Andmebaasid, MTAT Andmebaasikeeled 11.loeng

Pealkiri

(Microsoft PowerPoint - seminar_6_n\365uded-ainemudel tagasiside.ppt [Compatibility Mode])

Word Pro - diskmatTUND.lwp

Väljaandja: Vabariigi Valitsus Akti liik: määrus Teksti liik: algtekst-terviktekst Redaktsiooni jõustumise kp: Redaktsiooni kehtivuse lõpp:

Pealkiri

IMO 2000 Eesti võistkonna valikvõistlus Tartus, aprillil a. Ülesannete lahendused Esimene päev 1. Olgu vaadeldavad arvud a 1, a 2, a 3,

SQL

Microsoft Word - RM_ _17lisa2.rtf

Ruutvormid Denitsioon 1. P n Ütleme, et avaldis i;j=1 a ijx i x j ; kus a ij = a ji ; a ij 2 K ja K on korpus, on ruutvorm üle korpuse K muutujate x 1

PRESENTATION HEADER IN GREY CAPITALS Subheader in orange Presented by Date Columbus is a part of the registered trademark Columbus IT

Esitatud a. 1 PROJEKTEERIMISTINGIMUSTE TAOTLUS DETAILPLANEERINGU OLEMASOLUL 1. Füüsilisest isikust taotluse esitaja 2 eesnimi perekonnanim

lvk04lah.dvi

Siseministri 21. veebruari 2005.a määruse nr 34 Siseministri 27. augusti 2004.a määruse nr 52 Schengen Facility vahendite kasutamise kord muutmine lis

Õppimine Anne Villems, Margus Niitsoo ja Konstantin Tretjakov

Microsoft Word - ref - Romet Piho - Tutorial D.doc

Microsoft Word - essee_CVE ___KASVANDIK_MARKKO.docx

Microsoft Word - requirements.doc

vv05lah.dvi

Siseministri määruse nr 1-1/24 Lennundusseaduse alusel tehtava taustakontrolli isikuandmete ankeedi vorm LISA Isikuandmete ankeet Vastama p

Microsoft Word - TallinnLV_lihtsustatud_manual_asutuse_juhataja_ doc

Eesti Muusika- ja Teatriakadeemia diplomite, akadeemiliste õiendite ja tunnistuste väljaandmise kord I Üldsätted 1. Käesolev eeskiri sätestab Eesti Mu

Word Pro - digiTUNDkaug.lwp

Mida me teame? Margus Niitsoo

Ruumipõhiste ventilatsiooniseadmete Click to edit toimivus Master title style korterelamutes Alo Mikola Tallinn Tehnikaülikool Teadmistepõhine ehitus

Juhend nutiterminali seadistamiseks ja kaardimaksete vastuvõtmiseks Ingenico Link/2500 ja icmp

Microsoft Word - RVLi juhend.doc

raamat5_2013.pdf

OÜ Lemonsport Hummel spordivarustus Raplamaa JK õpilastele ja pereliikmetele Valik september Jalgpallikooli võistlus- ja treeningvarustus 20

Automaatjuhtimise alused Automaatjuhtimissüsteemi kirjeldamine Loeng 2

Matemaatiline analüüs IV 1 3. Mitme muutuja funktsioonide diferentseerimine 1. Mitme muutuja funktsiooni osatuletised Üleminekul ühe muutuja funktsioo

Matemaatika ainekava 8.klass 4 tundi nädalas, kokku 140 tundi Kuu Õpitulemus Õppesisu Algebra (65 t.) Geomeetria (60 t.) Ajavaru kordamiseks (15 õppet

PowerPoint Presentation

PowerPoint Presentation

I Generaatori mõiste (Java) 1. Variantide läbivaatamine Generaator (ehk generaator-klass) on klass, milles leidub (vähemalt) isendimeetod next(). Kons

Microsoft Word - Lisa 27.rtf

SINU UKS DIGITAALSESSE MAAILMA Ruuter Zyxel LTE3302 JUHEND INTERNETI ÜHENDAMISEKS

Mining Meaningful Patterns

Paberretsepti digitaliseerimine

IT infrastruktuuri teenused sissejuhatav loeng 00

PowerPointi esitlus

ДЕЛОВОЕ ОБЩЕНИЕ

Funktsionaalne Programmeerimine

Polünoomi juured Juure definitsioon ja Bézout teoreem Vaadelgem polünoomi kus K on mingi korpus. f = a 0 x n + a 1 x n a n 1 x

AASTAARUANNE

Pealkiri

Treeningvõistlus Balti tee 2014 võistkonnale Tartus, 4. novembril 2014 Vastused ja lahendused 1. Vastus: 15, 18, 45 ja kõik 0-ga lõppevad arvud. Olgu

KINNITATUD Tartu Ülikooli rektori 4. septembri a käskkirjaga nr 13 (jõustunud ) MUUDETUD Tartu Ülikooli rektori 27. novembri a k

Microsoft Word - Orca Swim Club MTÜ üldtingimused_ docx

TARTU ORIENTEERUMIS- NELJAPÄEVAKUD neljapäevak Tehvandi, 1. august Ajakava: Start avatud: Finiš suletakse: Asukoht: Võistlu

SPORTident Air+

1 / loeng Tekstitöötlus Sisend/väljund Teksti lugemine Sõnad

Caterpillar Inc. 100 NE Adams Street, Peoria, IL USA Meedianumber U9NE8460 Tegevusdokument Lisateave GRADE süsteemi komponentide nõuetele vastav

prakt8.dvi

Maksu- ja Tolliamet MAKSUKOHUSTUSLANE Vorm KMD INF Nimi Registri- või isikukood A-osa ANDMED VÄLJASTATUD ARVETE KOHTA. Esitatakse koos käibedeklaratsi

Praks 1

P2P süsteemid

G aiasoft Programmi VERP ja Omniva Arvekeskuse liidese häälestamine ja arvete saatmine-lugemine VERP 6.3 ja VERP 6.3E Versioon ja hilisemad K

Euroopa Liidu Nõukogu Brüssel, 24. september 2015 (OR. en) 12353/15 ADD 2 ENV 586 ENT 199 MI 583 SAATEMÄRKUSED Saatja: Kättesaamise kuupäev: Saaja: Eu

G OSA A VARIANT RESPONDENDILE ISE TÄITMISEKS

MAJANDUSAASTA ARUANNE aruandeaasta algus: aruandeaasta lõpp: nimi: mittetulundusühing Pärmivabriku Töökoda registrikood:

HIV-nakkuse levik Eestis ETTEKANNE KOOLITUSEL INIMKAUBANDUSE ENNETAMINE- KOOLITUS ÕPETAJATELE NOORSOOTÖÖTAJATELE JA KUTSENÕUSTAJATELE Sirle Blumberg A

MAJANDUSAASTA ARUANNE aruandeaasta algus: aruandeaasta lõpp: ärinimi: Will Do OÜ registrikood: tänava/talu nimi, Haraka

Pangalingi spetsifikatsioon Pocopay pangalingilt makse algatamiseks tuleb kasutada teenust Kaupmees teeb päringu Pocopayle aadressile

Valik harjutusi eesti keele postkaartide jaoks Tervitused ja hüvastijätud Grupp töötab paarides, harjutab fraase ja täiendab kaardil olevat veel omapo

Infix Operaatorid I Infix operaatorid (näiteks +) ja tüübid (näiteks ->) kirjutatakse argumentide vahele, mitte argumentide ette. Näiteks: 5 + 2, 2*pi

DVD_8_Klasteranalüüs

SQL

DNS teenus teoorias ja praktikas Autor Siim Adamson ITK Autor: Siim Adamson ITK

Diskreetne matemaatika I Kevad 2019 Loengukonspekt Lektor: Valdis Laan 20. juuni a.

3D mänguarenduse kursus (MTAT ) Loeng 3 Jaanus Uri 2013

Sissejuhatus Informaatikasse Margus Niitsoo

II lisa Ravimi omaduste kokkuvõtte ja pakendi infolehe muudatused, esitatud Euroopa Ravimiameti poolt Käesolev ravimi omaduste kokkuvõte ja pakendi in

Microsoft PowerPoint - loeng.ppt

1 Keskkonnamõju analüüs Loone - Pirgu metsakuivenduse rekonstrueerimine Koostajad Koostamise aeg metsaparandusspetsialist Jüri Koort Raplam

Outlookist dokumendi registreerimine Plugina seadistamine Dokumendi registreerimine Outlookist Vastusdokumendi registreerimine Outlookist Outlooki plu

Lisa 2 Maanteeameti peadirektori käskkirjale nr 0250 Kattega riigimaanteede taastusremondi objektide valikumetoodika Maanteeamet Tallinn 20

Microsoft PowerPoint - Loeng2www.ppt [Compatibility Mode]

X Window System tuntud kui: X11, X, X-Windows akendussüsteem/akendesüsteem rastergraafikat toetavatele ekraanidele UNIX-maailmas väga levinud mitmesug

Microsoft Word - 56ylesanded1415_lõppvoor

Microsoft Word - EHR.docx

bioenergia M Lisa 2.rtf

Lisa 2 Kinnitatud Kambja Vallavalitsuse määrusega nr 11 PUUDEGA LAPSE HOOLDUS- JA SOTSIAALTEENUSTE VAJADUSE HINDAMISVAHEND Lapsevaema/hoold

Lisa 1 I Üldsätted 1. Riigihanke korraldamisel tuleb tagada rahaliste vahendite läbipaistev, otstarbekas ja säästlik kasutamine, isikute võrdne kohtle

Skriptimiskeeli, mida ei käsitletud Perl Python Visual Basic Script Edition (VBScript) MS DOS/cmd skriptid Windows PowerShell midagi eksootilisemat: G

+/- 7(chomsky???) Deduktiivne jama 1.Hulkade spetsifitseerimine. Hulk on samalaadsete objektide järjestamata kogum, mida käsitlet

Markina

Tartu Kutsehariduskeskus IKT osakond Merlis Karja-Kännaste ASUTUSE DOKUMENDIREGISTRI AVALIK VAADE Analüüs Juhendaja Mirjam-Merike Sõmer Tartu 2015

E-arvete juhend

Individuaalne õppekava ja selle koostamine I. ÜLDSÄTTED Kehtestatud dir kk nr 32/ Individuaalse õppekava koostamise aluseks on 1.

Microsoft Word hankeplaan veebi.rtf

MAJANDUSAASTA ARUANNE aruandeaasta algus: aruandeaasta lõpp: nimi: Mittetulundusühing Hooandja registrikood: tänava nim

(Estonian) DM-RBCS Edasimüüja juhend MAANTEE MTB Rändamine City Touring/ Comfort Bike URBAN SPORT E-BIKE Kasseti ketiratas CS-HG400-9 CS-HG50-8

Väljavõte:

Andmebaasid, MTAT.03.264 6. loeng Normaalkujud E-R teisendus relatsiooniliseks Anne Villems

Meil on: Relatsiooni mõiste Relatsioonalgebra Kus me oleme? Funktsionaalsete sõltuvuse pere F ja tema sulund F + Võti Oskame kontrollida, kas X Y kasutades X + s.t. ilma F +

jätkub: Kus me oleme? (2) sõltuvuste pere katte mõiste Dekompositsiooni mõiste Dekompositsiooni omadus: Kadudeta ühend

Normaalkujud

Teine normaalkuju Second normal form Teatavasti võib relatsioonil olla palju võtmeid. Kui tunnus kuulub mingi võimaliku võtme tunnuste hulka, nimetame tunnust esmaseks (primary), vastasel juhul sekundaarseks (secondary). Def: Teine normaalkuju: Me ütleme, et relatsioon R on teises normaalkujus (2NF), kui mistahes võtme X ning mistahes sekundaarse tunnuse A jaoks ei leidu sellist võtme atribuutide pärisalamhulka Y X, et kehtiks Y A.

Näide Varustamine (Hankija nimi, Hankija aadress, Hankija telefon, Toode, Toote hind) Ainus võti: {Hankija nimi, Toode} F: Hankija nimi, Toode Hind Hankija nimi Hankija aadress, Hankija telefon Teine neist kahest rikub 2NF tingimusi. See relatsioon ei ole teisel normaalkujul.

Relatsiooni viimine teisele normaalkujule Teisele normaalkujule viiakse relatsioon dekompositsiooni teel. Kuidas seda teha? Millised tunnused jätta alles lähterelatsiooni, millised viia teise relatsiooni? Kui meil relatsioonil R atribuutide hulgaga U rikub teise normaalkuju tingimust funktsionaalne sõltuvus Y Z, siis tuleb teha järgmine dekompositsioon: ={R 1, R 2 } selliselt, et R 1 ( U - Z) ja R 2 ( YZ). Väide: Iga relatsiooni, mis rikub 2NF, saab viia 2NF kujule.

Näide Varustamine (Hankija nimi, Hankija aadress, Hankija telefon, Toode, Toote hind) Võti: {Hankija nimi, Toode} F: Hankija nimi, Toode Hind Hankija nimi Hankija aadress, Hankija telefon Y Z Dekompositsioon: Hankija (Hankija nimi, Hankija aadress, Hankija telefon) Varustamine (Hankija nimi, Toode, Toote hind)

Kolmas normaalkuju Third Normal Form Def. Kolmas normaalkuju. Relatsioon R on kolmandas normaalkujus (3 NF), kui ei leidu sellist kolmikut X, Y, A, kus X on mingi relatsiooni R võti, A on sekundaarne atribuut ja kus kehtiksid väited: 1. X Y 2. Y A 3. Y X X Y A

3NF rikkumise näide Tudeng (Perenimi, Eesnimi, Matriklinumber, P E M osakond, valdkond) O V F={M P, E, O, T ; O V} Kolmik: M, O, V rikub 3NF. M O V

Kui relatsioon ei ole 2NF, siis ei ole ta 3NF Näide Hange (Nimi, Aadress, Kaup, Hind) N A K H F={ NK H, N A} Polnud 2NF, pole ka 3NF, kuna NK N A, kus juures N ei määra NK. On muidugi 1NF.

Mõtlemiseks Kas relatsioon: Indeks ( Tänav, Linn, Postiindeks) on 3NF? Lihtsustav eeldus: tervel tänaval sama indeks. F={ Tänav, Linn Postiindeks; Postiindeks Linn} Vihje 1: millised on selle relatsiooni võimalikud võtmed? (on 2 võimalikku võtit). Vihje 2: millised on selle relatsiooni sekundaarsed tunnused?

Vastus Kuna kõik tunnused on primaarsed (sekundaarseid ei olegi), siis see relatsioon on 3 normaalkujul. Sellepärast, et ei saa olla rikkuvat kolmikut, kus viimane liige on sekundaarne.

Näide, mis on 2NF, aga pole 3NF KM (Kaubamaja, Kaup, Osakond, Juhataja) F={MK O, MO J} M K O J ainuke võti on MK. Kolmik: {M, K}; {M,O}; J - rikub 3NF nõudeid. Aga ükski võtme M,K alamhulk, ei määra mingit sekundaarset tunnust, seega on 2NF

Relatsiooni viimine kolmandale normaalkujule Antud: R atribuutide hulgaga U ja temal kehtivate funktsionaalsete sõltuvuste perega F Kui leidub selline X Y A, mis rikub 3NF, jagame R kaheks: R 1 (U-A) ja R 2 (YA). Leiame R1 (F) ja R2 (F). S.t. millised sõltuvused on R1-s ja R2-s Kordame R 1 ja R 2 jaoks 3NF kontrolli, kuni selliseid kolmikuid, mis rikuksid 3NF enam ei leidu.

Teine 3NF saavutamise algoritm Eeldame, et F on sõltuvuste minimaalne kate. Kui mõni F element sisaldab kõiki R atribuute, on tulemuseks R. Vastasel juhul teeme dekompositsiooni, kus iga sõltuvus X A F annab ühe elemendi atribuutidega XA. Ühendame samade vasakute pooltega F elementide tekitatud relatsioonid üheks XA 1 A 2...A k Teoreem: Algoritm 2 annab 3NF. Tõestus: läbinähtav.

Näide teise 3NF algoritmi kohta Tuletage meelde loengus tehtud harjutust dekompositsiooni kadudeta ühendi omaduse kohta: Eksam(Teadusk.,Osak.,Matr,_nr,Eesn,pereN,Dtiitel, Õppej, Aine,Kood,AinePunkte,kuuP,Hinne) F: O T; M E,N,O; Õ D; K A,AP,Õ; M,K,P H Dekompositsioon: R 1 (O,T); R 2 (M,E,N,O); R 3 (Õ,D); R 4 (K,A,AP,Õ) R 5 (M,K,P,H) on 3. normaalkujul, annab kadudeta ühendi ja säilitab F.

3NF omadused 1. Iga relatsiooni saab viia 3NF kujule. 2. Seejuures nii, et kehtiks kadudeta ühendi om. 3. Seejuures saab säilitada kõik funktsionaalsed sõltuvused. Kolmas normaalkuju on hea normaalkuju!

Kuhu kadus esimene normaalkuju? Meie relatsioonid, mida seni vaatasime, olid kõik 1. normaalkujul. Def. 1NF: Def. Relatsioon R D 1 x D 2 x... x D n on esimeses normaalkujus, kui kõik vaatluse all olevad hulgad D i koosnevad lihtelementidest e. atomaarsetest väärtustest S.t. relatsiooni R seisundi mistahes rida e. korteeži t=<t 1, t 2,, t n > elemendid on lihtväärtused vaadeldavas süsteemis.

Esimese normaalkuju selgitus Esimene normaalkuju nõuab, et tabeli ühes lahtris ei oleks mitut väärtust. Näiteks TÜ teadlaste andmebaasis võib olla üheks teadlase tunnuseks olla tema kraad, aga reeglina on teadlane kaitsnud mitut kraadi bakalaureuse, magistri- ja/või doktorikraad. Samuti võib tal olla mitu ühe taseme kraadi näiteks mitu magistrikraadi. Selliseid andmeid ei saa panna ühte tunnusesse, vaja on teha lisatabel.

Boyce-Codd i normaalkuju On 3NF edasiarendus. Def. Relatsioon R sõltuvuste perega F on Boyce- Codd i normaalkujul, kui mistahes sellel relatsioonil kehtiva funktsionaalse sõltuvuse X A korral, kus A ei kuulu X, hulk X sisaldab mingit R võtit. Teisiti öeldes: Boyce-Codd i normaalkuju nõuab, et muid mittetriviaalseid funktsionaalseid sõltuvusi pole kui need, kus võti määrab mingi tunnuse.

Seos 3NF ja B-C NF vahel Vt. eelmine, postiindeksi näide: saab olla 3NF, aga mitte olla B-C NF. Teoreem: Kui relatsioon R sõltuvuste perega F on B-C NF, siis on ta ka 3NF. Tõestus: vastuväiteline. Alati saab viia B-C NF nii, et dekompositsioonil on kadudeta ühendi omadus, aga ei saa alati säilitada F.

Relatsiooni viimine B-C NF Antud: R ja F Teeme samm-sammulise dekompositsiooni nii, et tal kogu aeg säilib kadudeta ühendi omadus. Esimene samm: leiame mõne X A, mis rikub B-C NF. Tähistame Y ülejäänud tunnused. Teeme dekompositsiooni kaheks: S1(X,A) ja S2( XY). On kadudeta ühendi omadusega. Nüüd rakendame sama reeglit S1 ja S2-le.

Näide: Koolitusfirma. Tema tegevust kirjeldab relatsioon F: K T Võti: AÕ Koolitus( Kursus, Tuutor, Aeg, Ruum, Õppur, Hinne) AR K K T A R Õ H AT R KÕ H AÕ R (K, T, A, R, Õ, H) rikub näit. KÕ H K,Õ H ( K, Õ, H) ( K,T, A, R, Õ) K T, AT R, AR K, AÕ R K T (K, T) (K, A, R, Õ) AK R, AR K, AÕ R! A,K R; A,R K (K, A, R) (K, A, Õ) AÕ K Saame peale dekompositsiooni 4 relatsiooni: ( Kursus, Õppur, Hinne) (Kursus, Aeg, Ruum) ( Kursus, Tuutor) (Kursus, Aeg, Õppur)

Miks see hea on? Tellija toob meile ülesande koolitusfirmale andmebaas luua. Nõuab relatsiooni: Koolitus (K, T, A, R, Õ, H) Teooria abil teeme 4 relatsiooni Teooria vastutab, et mistahes hetkel saame kadudeta kliendile esitada tema relatsiooni.

1., 2., 3.NF ja Boyce-Codd i normaalkujude vahekord 2.NF 3.NF 1.NF B-C.NF

Millal võib eirata 3NF? Kas meil on dünaamilised andmed? Kui ei, siis halb relatsioon pole väga halb. Kas päringutele vastamine on ajakriitiline? Kui jah, siis võime päringutele vastamiseks hoida vaate seisundit, parandada 3NF andmebaasi ja regulaarselt uuendada (öösel, nädalavahetusel) vaadet.

3NF andmeliiasus 3NF andmebaasis on relatsioonidel mingid ühised tunnused üle nende tehakse loomulik ühend. Ka see ühiste tunnuste hoidmine mitmes relatsioonis on teatud andmeliiasus. Kuidas seda andmeliiasust vähendada? Pange kõigile olemitüüpidele kunstlik, lühike ID. Loomulikud ühendid käiks üle selle kunstliku ID Kasutajavaadetes neid aga poleks.

Näide: Laulukoor (ID, Nimi, Liik) <102, Tarmak, segakoor> Dirigent (ID, Eesnimi, Perenimi,IK) <11, Urmas, Uljas, 3651001> Dirigeerib (ID, kooriid, digendiid, kuupäev) <1034, 102, 11, 14.05.2011> Seosteks kasutatakse 1-elemendilist lühikest ID-d.

Teooria ja näidete vahekord Teooria ehitatakse üles aksioomidest, defineeritud mõistetega, teoreemidega ja algoritmidega. Teooria kehtib ALATI, kui eeldused on täidetud. Mistahes väite saab ümber lükata, kui saab ehitada eeldustele vastava kontranäite. Teooriat ei saa üles ehitada näidetel näited illustreerivad ja aitavad teooriat mõista.

Kokkuvõte Projekteerimise käigus saame relatsioonid. Määrame nende funktsionaalsed sõltuvused F Määrame kõik võimalikud võtmed. Kontrollime, kas kõik relatsioonid on 3NF. Kui ei, teeme dekompositsioonid. Kontrollime, kas tulemused on 3NF? Kas annavad kadudeta ühendi ja kas säilitavad funktsionaalsed sõltuvused. Kontrollime, kas ka B-C NF, kui saame, siis viime.

Normaalkujude lõpetuseks Kas on muid, veel kangemaid normaalkujusid? Jah on. Aga need ei moodusta selle kursuse kohustuslike teadmiste osa. Kursuse Moodle materjalide viimasesse osasse lisan materjalid multisõltuvuste ja 4. normaalkuju kohta, ühendisõltuvuse ja 5. normaalkuju kohta, sisalduvussõltuvuse ja nende kõigi üldistuse kohta.

Graafilise mudeli teisendamine relatsiooniliseks

Graafilised mudelid Neid on mitut sorti Levinuimad: Entity-Relationship mudel UML klassimudel Kasutatakse palju vahendeid, mida relatsioonilises mudelis ei saa kasutada: korduvate väärtustega tunnused Struktuursed tunnused jne.

Probleem Meil on mistahes graafiline mudel, kuidas saame vastava relatsioonilise andmebaasi kirjelduse? Relatsioonid peavad kõik olema vähemalt 1. normaalkujus, sest ABJS pole vahendeid struktuursete ja korduvate tunnuste loomiseks

Kes vastutab 3. normaalkuju eest? Andmebaaside disainer Teisendab graafilise mudeli relatsioonide kirjeldusteks Määrab funktsionaalsete sõltuvuste pere iga relatsiooni jaoks Kontrollib, kas on 3. normaalkujus Vajadusel teeb dekompositsiooni Kui tarkvara teeb automaatse teisenduse, siis peab disainer aru saama: mida ja miks.

Täna keskendume mudeli teisendusele Vaja teisendada: Olemid nii tugevad kui nõrgad Seosed 1:1, 1:n ja n:m tüüpi Atribuudid liht-, korduvad? Struktuursed? Võtmed põhiliselt graafilise mudeli baasil, aga on ka eriolukordi

Algoritm 1. samm. Tugevate olemitüüpide teisendus. Igale tugevale olemitüübile seada vastavusse ühe relatsiooni kirjeldus. Kõik olemi lihtatribuudid lähevad relatsiooni atribuutideks. Liitatribuudid (nagu näiteks Aadress <Tänav, Maja, Korter, Linn, Indeks>) esitatakse oma komponentide kaudu, liittunnuse nimi kaob. Olemi võtmeatribuudid määrata võtmeteks ka relatsioonilises mudelis.

2.samm: Nõrkade olemitüüpide teisendus Igale nõrgale olemitüübile seada vastavusse üks relatsioon, milles esitada kõik selle olemi atribuudid lisaks temaga seotud eksistentsiaalse(te) olemi(te) võti (võtmed). Saadud relatsiooni võti moodustub tema enda atribuudist (atribuutidest) ja vastava(te) tugeva(te) olemi(te) võtme(te)st.

3.samm: 1:1 seoste teisendus Igale binaarsele 1:1 seosele E-R mudelis leiame temas osalevate olemitele vastavad relatsioonid, valime neist ühe ja lisame talle teise võtme. Kui seosel on tunnuseid, lisame samasse ka seose enda kõik elementaarsed atribuudid, Kui üks nendest olemitest on seoses totaalselt (täielikult, s.t. kõik tema eksemplarid on seosega hõlmatud), siis valimisel eelistame teda.

4.samm: 1:n seoste teisendus Iga 1:n seose jaoks leiame selle relatsiooni, mis esindab n-poolset olemit lülitame tema koosseisu nii teise osaleva olemi võtme kui ka seose enda kõik elementaarsed atribuudid.

5.samm: m:n seoste teisendus Iga m-n seose jaoks loome uue relatsiooni atribuutidena paneme sinna mõlema osaleva relatsiooni võtmed Loodud relatsiooni võtmeks on mõlema osaleva relatsiooni kõik võtmeatribuudid. Lisame relatsioonile kõik seose enda elementaarsed atribuudid, kui nad on olemas.

6.samm: Korduvate tunnuste ja gruppide teisendus Kui olemil leidub korduvaid tunnuseid või gruppe, siis loome iga sellise korduva grupi jaoks oma relatsiooni, võttes peale korduva grupi elementaarsete atribuutide sinna ka vastava olemi (seose) võtme. Kui ühel olemil on mitu korduvat gruppi, siis koostame uue relatsiooni igaühe jaoks neist eraldi.

7.samm: Enam kui 2 olemi vaheliste seoste teisendus Ärge tehke selliseid seoseid! Kui peate aga selliseid seoseid teisendama vaadake algoritmi seda sammu loengu tekstimaterjalidest.

Küsimused

1:1 seose kohta Otsustasite instituudi juhataja seosele isiku olemile lisada atribuudi juhatatav instituut. Mis on selle tunnuse väärtuseks nendel isikutel, kes instituute ei juhata? 1. Instituut, kus nad töötavad 2. Null-väärtus 3. Need isikud visatakse andmebaasist välja

1:n seose kujutamisel Algoritm ütleb, et n-poolsesse otsa lisatakse 1- poolse otsa võti. Kui seos on n-poolsest otsast mittetotaalne (s.t. osa n-otsa eksemplare ei ole seotud 1-otsa kirjega), siis mis lisatakse nende kirjete lisavälja(de) väärtuseks? 1. Juhusliku 1-otsa eksemplari võti 2. Null-väärtus 3. Sellised eksemplarid eemaldatakse andmebaasist

Küsimus 5. sammu kohta Kas 5 sammu (m:n seoste teisendamine) võib üks olemitest olla nõrk? 1. Ei tohi, sest siis ei ole tal võtit, mida uude relatsiooni lisada 2. Jah võib, võti tuleb nii, nagu 2. sammus määratud 3. Ei tea, ei oska

Nõrk olem ja korduv grupp Kui nõrgal olemil on korduv grupp (näiteks lapsel palju eesnimesid, mida on andmebaasis miskipärast eraldi vaja), siis millised olemi atribuudid tulevad uude, korduva grupi relatsiooni? 1. Nõrga olemi teised tunnused. 2. Nõrga olemi 2. sammu teisendusel määratud võti 3. Polegi muid tunnuseid peale korduva grupi oma tunnuste vaja

Näide ver.1 Piirkond Eesnimi Kuupäev Neljapäevak n n 1 Rajameister Perenimi Buss jah/ei IsikuKood Osaleb n Telefon Võistleja Võistl.klass Tulemus Eesnimi Mobiil Töötelefon Perenimi EOL-kood

Näide ver.2 Piirkond Eesnimi Kuupäev Neljapäevak 1 n 1 Rajameister Perenimi Buss jah/ei n IsikuKood 1 n Osaleb Telefon Võistleja Võistl.klass Tulemus Eesnimi Mobiil Töötelefon Perenimi EOL-kood

Näite teisendamise tulemus Neljapäevak ( Kuupäev, Piirkond, BussJah/ei, RM_IK) Rajameister ( Isikukood, Eesnimi, Perenimi, Mobiil, Töötelefon) Võistleja (EOL-kood, Eesnimi, Perenimi) Osalemine (N-kuupäev, V-EOL-kood, klass, Tulemus)

Koos paarilisega! Loengus jagatud materjalis on ülesanne (Töötaja, Osakond, Projekt, ) Võtke naabriga puhas paberileht, kirjutage (loetavalt) oma nimed paremasse ülemisse nurka ja teisendage see E-R mudel relatsiooniliseks.

LOENGU LÕPP