ADATBÁZIS-KEZELÉS Funkcionális függés, normál formák
KARBANTARTÁSI ANOMÁLIÁK
beszúrási anomáliák törlési anomáliák módosítási anomáliák
DOLG_PROJ(Dszsz, Pszám, Dnév, Pnév, Órák)
2
MÓDOSÍTÁSI ANOMÁLIÁK
DOLG_PROJ(Dszsz, Pszám, Dnév, Pnév, Órák)
Ha megváltoztatjuk a P1 számú projekt nevét „Számlázás”-ról például „Ügyfél-számlakezelés”re, akkor ezt a módosítást mind a 100 olyan dolgozó esetén végre kell hajtanunk, aki a P1 projekten dolgozik.
3
BESZÚRÁSI ANOMÁLIÁK DOLG_PROJ(Dszsz, Pszám, Dnév, Pnév, Órák)
Nem tudunk új projektet beszúrni, ha nincs hozzárendelve egyetlen dolgozó sem. Nem tudunk új dolgozót beszúrni, ha nincs hozzárendelve egyetlen projekthez sem.
4
TÖRLÉSI ANOMÁLIÁK DOLG_PROJ(Dszsz, Pszám, Dnév, Pnév, Órák) Ha törlünk egy projektet, akkor az összes olyan dolgozó is törlődik, aki az adott projekten dolgozik. Ha egy dolgozó egyedüliként dolgozik egy projekten, akkor a dolgozó törlése a szóban forgó projekt törlését is maga után vonja.
5
FUNKCIONÁLIS FÜGGÉS 2 attribútum közötti függés R(A1,A2,…,Am), X,Y⊂{R(A1,A2,…,Am} X → Y : X attribútum-halmaz funkcionálisan meghatározza Y-t, vagy Y funkcionálisan függ Xtől, ha Az R relációs séma minden relációja esetén igaz, hogy z adott reláció két kordját tekintve ha megegyeznek az X-hez tartozó attribútumértékek, akkor megegyeznek az Y-hoz tartozó attribútumértékek is. t1[X]=t2[X] ⇒ t1[Y]=t2[Y]
6
ARMSTRONG AXIÓMÁK Reflexivitás: Ha X⊇Y , akkor X→Y A reflexivitás szabálya szerint egy attribútumhalmaz mindig meghatározza önmagát, vagy saját maga bármilyen részhalmazát. Augmentivitás: Ha X → Y , akkor XZ → YZ Az augmentivitás szabálya szerint egy funkcionális függés mindkét oldalának ugyanazzal az attribútumhalmazzal történő bővítése újabb érvényes funkcionális függést eredményez. Tranzitivitás: Ha X → Y és Y → Z , akkor X → Z
7
TOVÁBBI TULAJDONSÁGOK
Dekompozíciós tulajdonság: Ha X → YZ, akkor X → Y és X → Z H X meghatároz egy attribútumhalmazt, akkor annak egy részét is meghatározza. Additivitás: Ha X → Y és X → Z, akkor X → Y,Z Pszeudotrazitivitás: Ha X → Y és WY → Z, akkor WX → Z
8
NORMALIZÁLÁS
A normalizáció az a folyamat, amelynek során szétbontjuk a nem kielégítő, „rossz” relációsémákat úgy, hogy az attribútumaikat több kisebb relációsémába helyezzük át. A normálforma a relációsémák kulcsai és a bennük fennálló funkcionális függések segítségével megfogalmazott feltétel,amellyel megállapítható, hogy a relációséma egy adottnormálformában van-e.
9
0. NORMÁL FORMA (0.NF)
Többértékű és összetett attribútumokat is tartalmaz
10
1. NORMÁL FORMA (1.NF)
Ez reláció 1NF-ben van, ha minden attribútuma funkcionálisan függ az elődleges kulcstól. Tiltja:
Összetett attribútum Többértékű attribútum Beágyazott reláció: az olyan attribútumokat, melyek értékei a különálló rekordokban nem atomiak
Reláció definícióját képezi
11
HOGYAN LEHET ELÉRNI?
Új rekordok Új elődleges kulcs Óriási redundancia
Új reláció
A többértékű attribútumot kivesszük egy új relációba Nem szabad információ veszteni Az új relációba kiemeljük az elsődleges kulcsokat Elsődleges kulcs, kulcs Két reláció hordozza a információt
12
TELJES ÉS RÉSZLEGES FÜGGÉS Egy X → Y funkcionális függés teljes funkcionális függés, ha X-ből bármely A attribútumot eltávolítva a függés a továbbiakban már nem áll fenn, azaz bármely A ∈ X attribútum esetén (X – {A}) már nem határozza meg funkcionálisan Y-t. Egy X → Y funkcionális függés részleges függés, ha valamely A ∈ X attribútum eltávolítható X-ből úgy, hogy a függés továbbra is fennáll, azaz valamely A X esetén (X – {A}) → Y.
13
2. NORMÁL FORMA (2.NF) Egy R relációséma második normálformában van, ha R minden másodlagos (leíró) attribútuma teljesen funkcionálisan függ R elsődleges kulcsától. Egy R relációséma második normálformában van, ha R-nek nincs olyan másodlagos (leíró) attribútuma, amely részlegesen függne R bármely kulcsától.
14
3. NORMÁL FORMA (3.NF) Egy R relációséma X → Y funkcionális függése tranzitív függés, ha létezik egy olyan Z attribútumhalmaz, amely nem kulcsjelölt és nem része R egyetlen kulcsának sem, és fennáll X → Z, illetve Z → Y. Egy R relációséma harmadik normálformában van, ha 2NF-ben van és nincs R-nek olyan másodlagos (leíró) attribútuma, amely tranzitívan függne az elsődleges kulcstól.
15
TRIVIÁLIS FÜGGÉS A1,A2,…,An → B1,B2,…,Bm Triviális, ha a jobb oldal részhalmazát alkotja a bal oldalnak (reflexív függés) Nem triviális, h legalább egy Bj nem az Ai-k közül kerül ki. Teljesen nem triviális, ha egyetlen Bj sem az Ai-közül kerül ki. A két attribútumhalmaz metszete üres. Egy R relációséma harmadik normálformában van, ha valahányszor egy X → A nemtriviális funkcionális függés fennáll R-en, akkor vagy X egy szuperkulcsa R-nek, vagy A egy elsődleges attribútuma R-nek.
16
BOYCE–CODD-FÉLE NORMÁLFORMA (BCNF)
Egy R relációséma Boyce–Codd-féle normálformában van, ha valahányszor egy X → A nemtriviális funkcionális függés fennáll Ren, akkor X egy szuperkulcsa R-nek.
17