Adatbázisok elmélete 6. előadás

Hasonló dokumentumok
Adatbázisok elmélete 6. előadás

Adatbázisok elmélete 6. előadás

Adatbázisok elmélete 6. előadás

Adatbázisok elmélete

Csima Judit szeptember 6.

Sor és oszlopkalkulus

ADATBÁZISOK ELMÉLETE 5. ELŐADÁS 3/22. Az F formula: ahol A, B attribútumok, c érték (konstans), θ {<, >, =,,, } Példa:

ABR ( Adatbázisrendszerek) 1. Előadás : Műveletek a relációs medellben

Egyed-kapcsolat modell

Egyed-kapcsolat modell

Adatbázisok elmélete

ABR ( Adatbázisrendszerek) 2. Előadás : Műveletek a relációs modellben

Adatbázisok elmélete 3. előadás

Adatbázisok elmélete 4. előadás

Relációs algebra 1.rész alapok

7. Előadás tartalma A relációs adatmodell

Relációs adatmodell. Adatbázisok használata

Adatbázisok elmélete 4. előadás

Tankönyv példák kidolgozása

E/K diagram átalakítása relációs adatbázistervre

Magas szintű adatmodellek Egyed/kapcsolat modell I.

Feladatok A mai előadáson: Tankönyv -- Termékek feladatai:

Adatbázisrendszerek Tervezése Közgazdászoknak Munkapéldány

Relációs algebra 2.rész példák

Relációs algebra 1.rész

Databases 1. Relációs algebra és nemrekurzív Datalog

4. Előadás Az SQL adatbázisnyelv

Adatbázisok elmélete 9. előadás

Adatbázisok I A relációs algebra

Relációs algebra áttekintés és egy táblára vonatkozó lekérdezések

Adatbázisok gyakorlat

modell, amiben csak bináris sok-egy kapcsolatok (link, memberowner,

RELÁCIÓS ADATBÁZISSÉMÁK. Egyed-kapcsolat modellről átírás

Adatbázisok tavaszi félév Vizsgatételsor

Relációs algebra lekérdezések optimalizációja. Adatbázisok használata

ADATBÁZISOK I. Az esetleges hibákat kérlek a csongor@csongorbokay.com címen jelezd! Utolsó módosítás: március 20.

Relációs algebrai lekérdezések átírása SQL SELECT-re (példák)

4.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK)

Adatbázis rendszerek 7. Matematikai rendszer amely foglal magában:

Bevezetés az SQL-be. Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009

Lekérdezések az SQL-ben 1.rész

Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Marosvásárhely. ABR ( Adatbázisrendszerek) 12. Előadás:

ADATBÁZIS-KEZELÉS. Relációalgebra, 5NF

Lekérdezések az SQL-ben 2.rész

Lekérdezések az SQL-ben 1.rész

ügyfél. Adatbázisok elmélete 2. előadás. Korai modellek. Adatbáziskezelő rendszerek története. Első rendszerek

Adatbázisok elmélete 8. előadás

Adatbázis Rendszerek

Adatbázisok elmélete 12. előadás

Adatbázisok elmélete

2.4. Egy algebrai lekérdező nyelv

Adatbázisok elmélete 9. előadás

Adatbázisok elmélete 12. előadás

Adatbázis rendszerek 2. előadás. Relációs algebra

1. Az adatbázis fogalma, fontosabb összetevÿi, felhasználási módjai

Adatbázisok elmélete 9. előadás

Adatbázisok elmélete 10. előadás

5.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK)

Adatbázis-kezelés. alapfogalmak

2.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK)

Adatbázis rendszerek 2. előadás. Relációs algebra

ADATBÁZISOK ELMÉLETE 2. ELŐADÁS 1/26 Adatbáziskezelő rendszerek története Ősei a file-kezelők; ezek nem teljesítik ugyan azokat az elvárásokat, amiket

7. Gyakorlat A relációs adatmodell műveleti része

Adatbázis rendszerek Definíciók:

Adatbázisok 1. Kósa Balázs gyakorlata alapján Készítette: Nagy Krisztián. 1. gyakorlat

ADATBÁZIS-KEZELÉS Demetrovics Katalin

Fájlszervezés. Adatbázisok tervezése, megvalósítása és menedzselése

Adatbázisok. 4. gyakorlat. Adatmodellezés: E-K modellb l relációs adatbázisséma. Kötelez programok kiválasztása szeptember 24.

Ellenőrző kérdések. 36. Ha t szintű indexet használunk, mennyi a keresési költség blokkműveletek számában mérve? (1 pont) log 2 (B(I (t) )) + t

Adatbázis rendszerek I

Csima Judit november 15.

ADATBÁZIS-KEZELÉS. Relációs modell

LEKÉRDEZÉSEK SQL-BEN. A relációs algebra A SELECT utasítás Összesítés és csoportosítás Speciális feltételek

Adatbázisok I. Jánosi-Rancz Katalin Tünde 327A 1-1

8. előadás. Az ER modell. Jelölések, az ER séma leképezése relációs sémára. Adatbázisrendszerek előadás november 14.

SQL bevezetés. Select-From-Where záradékok Több relációt tartalmazó lekérdezések Alkérdések

Több táblára vonatkozó lekérdezések Relációs algebra és SQL SELECT

T Adatbázisok-adatmodellezés

8. Előadás tartalma. Funkcionális függőségek

Mveletek a relációs modellben. A felhasználónak szinte állandó jelleggel szüksége van az adatbázisban eltárolt adatok egy részére.

Csima Judit október 24.

Relációs adatbázisok tervezése ---2

Adatmodellezés. 1. Fogalmi modell

Adatbázisok-I. előadás dr. Hajas Csilla (ELTE IK)

A relációs adatmodell

Több felhasználó párhuzamosan olvashatja, bővítheti, módosíthatja és törölheti az adatokat Az adatok konzisztenciájának és biztonságának biztosítása

Az SQL adatbázisnyelv: DML

Adatbázisrendszerek 8. előadás: Az Enhanced Entity-Relationship modell március 27.

Adatbázis tartalmának módosítása

ADATBÁZISOK I. ELŐADÁS ÉS GYAKORLAT JEGYZET

Csima Judit BME, VIK, november 9. és 16.

Adatbázisok - 1. előadás

Relációs algebra 2.rész

Az egyed-kapcsolat modell (E/K)


Mindent olyan egyszerűvé kell tenni, amennyire csak lehet, de nem egyszerűbbé.

5.3. Logika a relációkhoz

ADATBÁZISOK gyakorlat: SQL 2. rész SELECT

Adatbázisok elmélete 11. előadás

ADATBÁZIS-KEZELÉS. 1. Alapfogalmak

Átírás:

Adatbázisok elmélete 6. előadás Katona Gyula Y. Budapesti Műszaki és Gazdaságtudományi Egyetem Számítástudományi Tsz. I. B. 137/b kiskat@cs.bme.hu http://www.cs.bme.hu/ kiskat 2005 ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 2/?? Bizonyítás alapreláció: Tegyük fel, hogy R k oszlopos alapreláció R = { t k Rt } Unió: Tfh. S is k oszlopos R S = { t k Rt St } különbség: R \ S = { t k Rt St } metszet: R S = { t k Rt St } szorzat: R legyen k oszlopos, S pedig l oszlopos R S = { t k+l r k s l Rr Ss r[1] = t[1]... r[k] = t[k] s[1] = t[k + 1]... s[l] = t[k + l]} vetület: Legyen RA 1,..., A d, A d+1,..., A k reláció, vetítsük az első d-re π A1,...,A d R = { t d r k Rr r[1] = t[1]... r[d] = t[d] } ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 1/?? Mivel lehet több mindent kifejezni? Relációs algebrával, vagy sorkalkulussal? Tétel. A sorkalkulus relációsan teljes. Sorkalkulus ereje Bizonyítás: Be kell látni, hogy minden reláció, ami relációs algebrával megadható, megadható sorkalkulussal is. Ehhez azt elég megmutatni, hogy 1. az alaprelációk megadhatók 2. a relációs algebrai alapműveletek unió, különbség, szorzat, vetítés, szelekció alaprelációkra alkalmazva megvalósíthatók 3. ha R és S nem alapreláció és ezekre alkalmazunk valami relációs alapműveletet, akkor az eredmény kifejezhető sorkalkulussal ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 3/?? kiválasztás: σ F R = { t k Rt F }, ahol F átfordítása sorkalkulusra = az i-edik attribútum helyett t n [i]-t írunk. Pl. evidenciával történő meggyőzés σ ÁR> 150 = hamburger TERMEL = { t 4 TERMELt t[4] > 150 t[3] = hamburger } Nem lényeges, hogy R, S alaprelációk. Ha R = { t k φt } és S = { t k ψt }, azaz R és S már valahogy ki van fejezve sorkalkulussal = R S = { t k φt ψt } többinél ugyanígy Rt és St helyett φt-t és ψt-t írunk.

ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 4/?? További példák GYÁRTÓ, MODELL, TÍPUS PCMODELL, SEBESSÉG, MEMÓRIA, MEREVLEMEZ, CD, ÁR LAPTOPMODELL, SEBESSÉG, MEMÓRIA, MEREVLEMEZ, KÉPERNYŐ, ÁR NYOMTATÓMODELL, SZÍNES, TÍPUS, ÁR A relációk jelentése: : az adott nevű gyártó gyártja az adott modellszámú és adott típusú PC, Laptop vagy nyomtató terméket PC: modellszám, sebesség megahz-ben, memória megabájtban, merevlemez gigabájtban, a CD sebessége pl. 4x, az ár Laptop: mint PC-nél, plusz a képernyő mérete hüvelykben Nyomtató: modellszám, színes-e i/n, típusa tintasugaras, lézer, mátrix, ára ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 6/?? GYÁRTÓ, MODELL, TÍPUS PCMODELL, SEBESSÉG, MEMÓRIA, MEREVLEMEZ, CD, ÁR LAPTOPMODELL, SEBESSÉG, MEMÓRIA, MEREVLEMEZ, KÉPERNYŐ, ÁR NYOMTATÓMODELL, SZÍNES, TÍPUS, ÁR Melyek azok a gyártók, amelyek gyártanak legalább két, egymástól különböző, legalább 133 Mhz-en működő PC-t vagy Laptopot? Nincs két azonos modellszám! R1 = π MODELL, SEBESSÉG PC πmodell, SEBESSÉG LAPTOP R2 = π GYÁRTÓ, MODELL σsebesség>=133 R1 R3 = ρ R3GYÁRTÓ2, MODELL2 R2 R4 = R2 R3 R5 = π GYÁRTÓ R4 GYÁRTÓ = GYÁRTÓ2 MODELL <> MODELL2 A modellszámokról feltesszük, hogy egyediek. Melyek azok a PC modellek, amelynek sebessége legalább 150? π MODELL σsebesség >= 150 PC Mely gyártók készítenek legalább egy gigás merevlemezű laptopot? π GYÁRTÓ σmerevlemez>= 1 LAPTOP Megjegyzés: kifejezésfával is meg lehet adni a relációs algebrai kifejezéseket: ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 5/?? GYÁRTÓ, MODELL, TÍPUS PCMODELL, SEBESSÉG, MEMÓRIA, MEREVLEMEZ, CD, ÁR LAPTOPMODELL, SEBESSÉG, MEMÓRIA, MEREVLEMEZ, KÉPERNYŐ, ÁR NYOMTATÓMODELL, SZÍNES, TÍPUS, ÁR Adjuk meg a B gyártó által gyártott összes termék modellszámát és árát típustól függetlenül! π MODELL, ÁR σgyártó= B TÍPUS = PC PC π MODELL, ÁR σgyártó= B TíPUS = LAPTOP LAPTOP π MODELL, ÁR σgyártó= B TíPUS = NYOMTATÓ NYOMTATÓ Melyek azok a gyártók, akik laptopot gyártanak, de PC-t nem? 1 = ρ 1 πgyártó, TÍPUS π GYÁRTÓ σtípus= LAPTOP 1 \ πgyártó σtípus= PC 1 ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 7/?? σ SEBESSÉG>=133 π GYÁRTÓ GYÁRTÓ = GYÁRTÓ2 MODELL <> MODELL2 ρ R3GYÁRTÓ2, MODELL2 π MODELL, SEBESSÉG π MODELL, SEBESSÉG PC LAPTOP

ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 8/?? További műveletek Ezek nincsenek benne a relációs algebrában, de fontosak, nem túl műveletigényesek. ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 10/?? Külső illesztés outer join Definíció. R, S relációk = R S bal külső illesztés: R S-hez azokat az R-beli sorokat is hozzáveszük, amihez nem illeszkedik S-beli. Hiányzó helyekre NULL kerül. aggregátumok: MIN, MAX, AVG, SUM, CNT szám Pl. leggyorsabb gép, átlagár, hányféle printer eredmény mindig egy szám aggregátum csoportosítva: Bizonyos feltételek szerinti partíciókban aggregátumok. Pl. átlagos ár tintasugaras nyomtatók között, egy gyártónak hány terméke van = eredmény egy reláció pl. gyártó, szám párokból. rekurzív lezárás: hagyományos adatkezelésben ritka, intelligensebb rendszerekben inkább Pl. reláció: ki főnöke kinek = lezárás: ki felettese kinek reláció: melyik városból melyikbe van repülő járat = lezárás: átszállással el lehet-e jutni Ezt a relációs algebra nem tudja, csak fix mélységre: pl. max 4 átszállás, SQL nem igazán támogatja, de azért kicsit igen: SQL3, majd lesz Pl. SZEMÉLYNÉV, KÓD, CÍMKÓD, CÍM SZEMÉLY CÍM = akinek nincs e nem lesz rajta SZEMÉLY CÍM = kiderül, kinek nincs meg a e SQL-ben van, relációs algebrával elvileg nem fejezhető ki NULL miatt, de elkerülhető. Ha a relációs algebrát úgy definiáljuk, hogy kiindulhatuk konstans relációból is, akkor: R S R \ R S {NULL,..., NULL} Van jobb külső illesztés is: R S Teljes külső illesztés: R S := R S R S Példa: R A B C a b 2 a c 3 b a 4 S D C a 2 b 3 x 2 y 1 R S A B C D a b 2 a a b 2 x a c 3 b b a 4 NULL ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 9/?? A NULL érték Lehet, hogy vannak kitöltetlen mezők, ezt meg akarjuk engedni. Pl. ha csak a termelő anyjának neve hiányzik, attól még a termék ára kell. = NULL érték 2 alapvető értelmezés majd SQL-nél lesz, hogy hogyan kell megmondani, hogy melyik van éppen, illetve, hogy lehet-e egyáltalán NULL valahol: Attól függően, hogy hogyan értelmezzük a NULL-t: Mi legyen egy ilyen kérdéssel?: Pl. π CÍM= BP TERMELŐ Ilyenkor belevegyük-e ha a NULL?, de nem ismerjük. ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 11/?? R A B C a b 2 a c 3 b a 4 R S A B C D a b 2 a a b 2 x a c 3 b NULL NULL 1 y S D C a 2 b 3 x 2 y 1 R S A B C D a b 2 a a b 2 x a c 3 b b a 4 NULL NULL NULL 1 y

ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 12/?? Részben kompatibilis relációk egyesítésére: DIÁKNÉV, TÉMAVEZ, TSZK TANÁRNÉV, TSZK, BEOSZT diák tanár Külső unió DIÁK k TANÁR NÉV TSZK TÉMAVEZ BEOSZT NULL NULL ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 14/?? ODL séma átírása relációsémává Legegyszerűbb eset = az osztályoknak csak attribútumai vannak, amik atomi típusúak: interface Film keys, év{ attribute ; attribute év; attribute hossz; attribute szalagfajta; }; = Film, év, hossz, szalagfajta A kulcs az ODL-es kulcs lesz, ha egy van csak belőle; ezt aláhúzással jelöljük. Ha több kulcs van: egyiket jelöljük, a többit írásban de persze azok is kulcsok a relációsémában is. Összetett típusú attribútumok: pl. rekordszerkezet OK = interface Színész key név{ attribute String név; attribute Struct Cím { string város, string utca } lak; }; = Színésznév, város, utca Kulcs: ugyanúgy, mint a nem összetett attribútumnál ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 13/?? Multihalmazos szemantika A relációs algebrában ugyan minden reláció halmaz, ezért nincsenek többszörös sorok, de pl. SQL-nél lesznek. A multihalmazokkal kicsit máshogy vannak a halmazműveletek: Ha a t sor m R t példányban van meg R-ben és m S t példányban van meg S-ben, akkor m R S t := m R t + m S t példányban lesz meg R és S uniójában m R S t := min{m R t, m S t} példányban lesz meg R és S metszetében m R\S t := max{m R t m S t, 0} példányban lesz meg R \ S-ben Kiválasztásnál, vetítésnél nincs változás. ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 15/?? De pl. halmaz csak rosszul oldható meg: halmaz minden eleméhez új sor. interface Színész key név { attribute String név; attribute Set < Struct Cím{ string város, string utca } > lak; }; = Színésznév, város, utca név város utca Gálvölgyi J. Budapest Nyereg u. 2. Gálvölgyi J.. Budapest Kantár u. 3. Kulcs: elromlik az ODL-es kulcs, lehet, hogy ami ott kulcs volt, itt már nem lesz az = baj

ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 16/?? Kapcsolatok átírása ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 18/?? év név Ha valamelyik irányba egyértékű a kapcsolat: ha a C és D közti kapcsolat D felé egyirányú, akkor a C osztály átírásakor bevesszük a D osztály kulcsát is ha több van, akkor egyet Csak egyik irányból csináljuk, akkor is, ha a másik irányba is egy a kapcsolat interface Film keys, év{ attribute ; attribute év; attribute hossz; attribute szalagfajta; relationship Stúdió gyártó inverse Stúdió::gyárt;}; hossz Filmek szalagfajta Gyártó Stúdiók = Film, év, hossz, szalagfajta, stúdiónév Feltéve, hogy a stúdiónév kulcs a Stúdió osztályban Kulcs: mivel a kapcsolat egy jellegű volt, ezért az osztály kulcsa jó lesz kulcsnak a relációsémában is Mindkét irányban többértékű kapcsolat: Ugyanaz a probléma, mint a halmaz típusú attribútum. Nem lehet jól megoldani, sok sor lesz és a kulcs is elromlik. Ha több ilyen kapcsolat is van = katasztrófa = Gyártó, év, stúdiónév Film, év, hossz, szalagfajta StúdiókstúdióNév, E/K-ból jobban lehet relációsat csinálni. ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 17/?? E/K modell átírása Egyedhalmaz attribútumokkal: év ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 19/?? Megjegyzés: ha bináris több-egy kapcsolatról van szó, akkor van jobb megoldás is, az amit ODL-nél csináltunk: ha az E és F közti kapcsolat F felé egyirányú, akkor az E egyedhalmaz átírásakor bevesszük az F osztály kulcsát is. Ez ugyanazért lesz jó, miért az ODL-es és így eggyel kevesebb tábla lesz. Így az előbbi E/K diagram esetén nem kell külön tábla a kapcsolatnak, hanem a Filmek lesz a Film tábla. Film, év, hossz, szalagfajta, stúdiónév hossz szalagfajta = Film, év, hossz, szalagfajta A reláció kulcsa = az egyedhalmaz kulcsa Egyértékű és többértékű kapcsolat: = Külön reláció, attribútumai: a kapcsolatban résztvevő egyedhalmaz kulcsainak uniója + kapcsolat attribútumai esetleg átnevezés Az így kapott reláció kulcsa: a kapcsolatban résztvevő egyedhalmaz kulcsainak uniója

ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 20/?? Ha W gyenge egyedhalmaz: Gyenge egyedhalmazok kezelése Nem csak W attribútumait kell tartalmaznia, hanem azokat is, amiktől kulcs lesz. Dupla keretes kapcsolat. Ez minden olyan kapcsolatra is igaz, melyben W részt vesz és amelyben így szerepel W kulcsa. A dupla keretes kapcsolatokhoz nem kell külön reláció mert az az infó már egyszer szerepel a gyenge egyedhalmaz megadásánál. szám név ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 22/?? Alosztályok kezelése E/K modellben E/K-ban nem kell egy egyednek egyetlen egyedhalmazban lennie ezért nem lesz itt KrimiRajzfilm egyedhalmaz, előfordulhat, hogy egy filmre vonatkozó információk szét vannak szórva. A relációs sémára való átíráskor gondoskodunk róla, hogy a részinfókból vissza tudjuk állítani az egészet. Átírás: Minden alosztályhoz csak a főosztály kulcsát és saját attribútumait rendeljük. Az alosztály kulcsa a főosztály kulcsa lesz, így a kapcsolatba is ezt viszi magával az alosztály. Az isa kapcsolathoz nem rendelünk relációt. Csoportok Egysége Stúdiók Stúdiónév, Csoportokszám, stúdiónév Egységszám, stúdiónév, név Egységszám, stúdiónév, név = Egységszám, név hiszen ugyanaz kétszer. = Egység el is hagyható, hiszen összes attribútuma szerepel a Csoport-ban is. Ez általában is igaz, hiszen a gyenge egyedhalmaz attribútumai között ott lesz a dupla keretes rombusz minden attribútuma. ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 21/?? Alosztályok kezelése ODL-ben ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 23/?? Disney szerû e év Film, Rajzfilm, Krimi, KrimiRajzfilm esete. Itt minden egyed pont egy osztályban lehet benne, ezért kellett KrimiRajzfilm osztályt is megadni, pl. a Macskafogó miatt. Filmek isa Rajzilmek Hangok Színészek Minden alosztályhoz egy reláció, minden attribútumával és kapcsolatával öröklöttekkel is. isa Krimi fegyver Film, év, hossz, szalagfajta, stúdiónév, színésznév Rajzfilm, év, hossz, szalagfajta, stúdiónév, színésznév, hang BűnügyiFilm, év, hossz, szalagfajta, stúdiónév, színésznév, fegyver BűnügyiRajzfilm, év, hossz, szalagfajta, stúdiónév, színésznév, hang, fegyver Kulcs: a főosztálynál úgy, ahogy eddig volt, az alosztály meg örökli a kulcsot, ha tudja Hátrány: egy film kereséséhez mind a négy relációt végig kell nézni, ha nem tudjuk, hogy hova tartozik a keresett film. Megjegyzés: ebben a példában a kulcsok elromlanak a többes kapcsolatok miatt hossz szalagfajta = Film, év, hossz, szalagfajta Rajzfilm, év, Disney-szerű-e Krimi, év, fegyver Hangok, év, Szinésznév Hátránya: egy film információi több helyre vannak szórva pl. Macskafogónál: a hossz és a szalagfajta a Film-ben, az, hogy nem Disney-is, az a Rajzfilmben, hangok a Hangokban. De ezeket az infókat össze lehet rakni, a, év kulcs menti természetes illesztéssel.

ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 24/?? Másik megoldás NULL értékkel Film, év, hossz, szalagfajta, stúdiónév, színésznév, fegyver A hiányzó helyeket NULL-al töltjük ki. Hátrány: 1. elveszíthetünk információt. Pl. egy olyan krimiről, amiben nincs fegyver, nem tudjuk, hogy krimi 2. a, év pár nem lesz kulcs, ugyanúgy, ahogy az ODL-es átírásnál sem lett ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 26/?? Példák név Gyereke Személy isa isa isa Gyerek Apa Anya Apja Házasok Anyja Személynév, ; Gyereknév, ; Apanév, Anyanév, Apjaapanév, apa, gyereknév, gyerek Anyjaanyanév, anya, gyereknév, gyerek Házastfnév, f, nőnév, nő Gyerekegyereknév, gyerek, szülőnév, szülő ADATBÁZISOK ELMÉLETE 6. ELŐADÁS 25/?? Alakítsuk relációssá: Példák sor ülés Foglalások fogl. utas fogl. járat Utasok Járatok azon név tel. szám nap géptíp. Utasazon, név,, tel. Járatszám, nap, géptípus Foglalásokazon,szám, nap, sor, ülés Megjegyzés: ha a Foglalások nem gyenge egyedhalmaz lett volna, hanem kapcsolat a két egyedhalmaz között, akkor is ugyanez a séma relációs jött volna ki.