Download as pdf or txt
Download as pdf or txt
You are on page 1of 12

ADATBZIS-KEZELS

1. Alapfogalmak .......................................................................................1
1.1. Adat ................................................................................................................................1
1.2. Informci ......................................................................................................................1
1.3. Egyed, Tulajdonsg, Kapcsolat......................................................................................2
1.4. Adatmodellek .................................................................................................................2
1.5. Adatbzis (DATABASE, DB) .......................................................................................3
2. A relcis adatmodell ..........................................................................4
2.1. A relci meghatrozsa ................................................................................................4
2.2. A relci tulajdonsgai...................................................................................................4
2.3. A kulcs fogalma .............................................................................................................5
2.4. Funkcionlis fggsgek................................................................................................6
2.5. Normlformk ................................................................................................................6
3. Tervezs ................................................................................................7
3.1. Informcis rendszerek tervezse ..................................................................................7
3.2. Adatbzis-tervezs .........................................................................................................8
3.3. Egyed kapcsolat (E/K) adatmodell (Entity Relationship model).............................9
3.3.1. Az egyedhalmazok kztti kapcsolatok.........................................................................9
3.3.2. Az egyed-kapcsolat modell jellsrendszere ...............................................................10
3.4. Plda: ruhzi adatbzis tervezse. .............................................................................11
4. Ajnlott irodalom ..............................................................................12

1. Alapfogalmak
1.1. Adat
Adat (DATA): lehet brmi, ami krlttnk van, ami szmunkra jelent valamit, valamilyen
tulajdonsggal rendelkezik, mstl megklnbztethet s a szmtgpen valahogyan hossz idre
trolni szeretnnk, azrt, hogy ksbb tbbszr is vagy rendszeresen valamilyen formban
visszakaphassuk, kombinlva a tbbi hasonlan trolt adatokkal.

1.2. Informci
Informci: valamilyen j ismeret, amit a trolt adatokbl kaphatunk. Nem azonos az adattal,
hanem az a jelents, amit mi tulajdontunk az adatnak, amit az adat a szmunkra hordoz.

Az Informcis rendszer lehetsget nyjt nagy mennyisg adatok szmtgpes trolsra a


megfelel hardware eszkzk hasznlatval, abbl a clbl, hogy a klnbz felhasznlk a
hardware valamint a software eszkzk (programcsomagok) segtsgvel klnbz informcit
kaphassanak a trolt adatokbl.
Az informcis rendszer az adatokat trolja a hardware eszkzkn, ahonnan a software
segtsgvel a felhasznlk informcit kaphatnak.

1
1.3. Egyed, Tulajdonsg, Kapcsolat
Egyed (entity, entits): Az a valami, dolog, amit ismeretekkel akarunk lerni; valami ami van s
megklnbzhet. Az egyedek a valsg azon elemei, melyek szmunkra valamilyen lnyeges
informcit hordoznak, egymstl megklnbztethetek. Az egyed egy konkrt rtkt egyed
elfordulsnak, az elfordulsok sszessgt pedig egyedhalmaznak nevezzk. Pldul az egyetem
egyed esetn egyed elforduls lehet az ELTE; msfell ha az egyed alatt az iskolatpusokat rtjk,
akkor az egyetem, mint elforduls szerepel. Msik plda: egyed legyen a jrm, ekkor egyed
elforduls a gpkocsi, a villamos, a repl. Ha az alkalmazs gy kvnja, hogy a gpkocsi legyen
az egyed, akkor pl. a Kis Pista kocsija egy egyed elforduls lesz.
Tulajdonsg (attribtum): A tulajdonsg az, amivel az egyedet lerjuk, ami alapjn az
egyedhalmaz egyedei megklnbztethetek a tbbi egyedtl. A tulajdonsg egy konkrt rtke a
tulajdonsg elfordulsa. A tulajdonsg elfordulsok sszessgt tulajdonsghalmaznak
nevezzk. Pldul a szn, mint tulajdonsg esetn a fehr egy elforduls. Ha a tulajdonsggal a
jrm fajtjt kvnjuk lerni, akkor az elforduls lehet pl. vizi, lgi, szrazfldi jrm. A tpus
rtke, mint a gpkocsit jellemz tulajdonsg, lehet OPEL, BMW, stb., a gpkocsit jellemz msik
tulajdonsg lehet a gpkocsi rendszma.
Kapcsolat (relationship): Az egyedek vagy tulajdonsgaik kztti viszony. A kapcsolatokat
megklnbztethetjk annak megfelelen, hogy az egyedhalmazok kztti viszonyt vizsgljuk,
vagy az egyes egyedek tulajdonsghalmazai kztti viszonnyal foglalkozunk. Az egyedhalmazok
kztti kapcsolat, a tblk (relcik) kztti kapcsolatban fog megjelenni. Az egyedhalmaz
tulajdonsghalmazai kztti kapcsolatokat pedig a relcis modellnl vizsgljuk, amikor
meghatrozzuk a funkcionlis fggsget.

1.4. Adatmodellek
Az adatmodell a valsg objektumait (egyedeit), ezek tulajdonsgait s a kztk lv kapcsolatokat
brzolja.
Az adatmodell jellemzi:
nem konkrt rtkekkel, hanem az adatok tpusaival, sszefggseivel foglalkozik
a valsgot tkrzi
a valsg mozgsait kell kvetnie
Az adatmodellt kt dolog hatrozza meg:
a jellsrendszer, mely lerja az adatokat,
a mveletek halmaza, mely lehetv teszi az adatok kezelst.
Az adatmodellek ngy klnbz fajtja ismert:
hierarchikus
hls
relcis
egyed-kapcsolat
modell jells mveletek
hierarchikus modell faszerkezet (1:N) adatkezel nyelv
hls modell hl (M:N) adatkezel nyelv
relcis modell tbla relcis algebra, SQL
egyed-kapcsolat diagram nincs

2
1.5. Adatbzis (DATABASE, DB)
Adatbzis alatt egymssal valamilyen szempontbl kapcsolatban lv adatok jl szervezett
halmazt rtjk, mely szmtgpen tartsan, hosszabb ideig trolt s egyidejleg tbb felhasznl
prhuzamosan hasznlhatja.
Az adatbzis hrom absztrakcis szintjt emeljk ki, ez a hrom sznt ugyanannak az
adatbzisnak hrom klnbz vetlete:
Fizikai vagy bels szint: Meghatrozza, hogy hogyan helyezkednek el az adatok fizikailag a
szmtgp trol eszkzn.
Fogalmi vagy konceptulis szint: A fogalmi adatbzis, az adatbzis teljes lersa egy adatmodell
segtsgvel.
Kls, felhasznli, view (nzet) vagy alsma szint: Az adatbzis-kezel rendszer kpes minden
felhasznl rszre az adatbzisnak csak azt a rszt megmutatni, melyre szksge van, ez a
kls vagy felhasznli szint. Ez a szint teht egy rszt adja a teljes adatbzisnak, a fogalmi
adatbzisnak.
Sma s elforduls.
Adatbzis sma: az adatbzis szerkezete, amit tervezskor, egyszeri alkalommal hozunk ltre,
ritkn vltoztatjuk. Az adatbzis sma megadja, hogy az adatbzisban milyen egyedhalmazok
vannak, ezek milyen tulajdonsghalmazokkal s kapcsolatokkal rendelkeznek. A szerkezet
lershoz klnbz adatmodellek llnak a rendelkezsnkre.
Adatbzis elforduls alatt az adatbzis pillanatnyi tartalmt rtjk ltalban a tervezs
befejezsekor, az adatbzis hasznlatba vtelekor trtnik az adatok elsdleges beltltse az
adatbzisba. A mindennapi hasznlat sorn az adatbzis elforduls, a tartalom az, ami
llandan vltozik.
Adatfggetlensg.
Fizikai fggetlensg: egy jl szervezett adatbzisban a fizikai sma megvltoztathat, anlkl,
hogy vltoztatni kellene a fogalmi smn, vagy hogy jra kellene definilni a nzeteket, a
kls szintet. Ezt, a fizikai s fogalmi szint kztti fggetlensget nevezzk fzikai
adatfggetlensgnek.
Logikai fggetlensg: A fogalmi s a kls szint kztti viszonyt vizsglva beszlhetnk logikai
adatfggetlensgrl. Az adatbzis hasznlata kzben szksgess vlhat a fogalmi adatbzis
mdostsa, pldul j objektumok bevezetse (j tblk ltrehozsa), rgi objektumok j
informcival val kibvtse (meglv tblkhoz j oszlop hozzadsa), feleslegess vlt
objektumok megszntetse (nem hasznlt tblk trlse). A fogalmi smn szmos vltoztats
hajthat vgre anlkl, hogy ezek a ltez felhasznli nzeteket rintenk. Nhny, a fogalmi
smn vgrehajtott vltoztats ignyelheti az rintett felhasznli szintek mdostsait. Az
alkalmazi programoknak pedig szintn az esetek tbbsgben minden vltoztats nlkl
futniuk kell. Egy olyan vltoztats van, ami mindenkppen a felhasznli sma trst
ignyli, ha olyan informcit trltnk a fogalmi smbl, amit valamelyik alsma hasznlt.
Ebben az esetben szksgess vlhat egyes alkalmazi programok mdostsa is.

3
2. A relcis adatmodell
2.1. A relci meghatrozsa
Relci: adott n darab halmaz, ezeket jelljk D1,Di,Dn-nel. Relcin e halmazok direkt
szorzatnak a rszhalmazt rtjk s R-rel jelljk. Az R relcit teht felrhatjuk a kvetkez
formban: R={(a1,ai,an), aiDi, i=1,,n}. A Di halmazok a relci rtelmezsi
tartomnyai, a halmazok szmt (n) a relci foknak nevezzk. A relci szmossgt R -el
jelljk s megadja a relciban lv n - esek, a relci elemeinek szmt. A relci megadsra a
kvetkez jells szolgl: R(D1,.,Dn).
Az R relcit brzolhatjuk egy tblval, melynek n oszlopa s m sora van.
A relci s a tbla szinonim fogalom, amennyiben a tbla rendelkezik azokkal a
tulajdonsgokkal, amelyek a relcit is jellemzik.

2.2. A tbla (relci) tulajdonsgai


1. Minden tblnak (relcinak) egyedi neve van. pl. DIAK, DOLGOZO
2. A tbla oszlopainak (attribtumainak) neve van, s ezek a nevek egy tbln bell egyediek.
3. Az oszlopok szma (a relci foka) az adott tblban lland.
4. Az oszlopok sorrendje tetszleges; azonostsuk a nevk alapjn s nem a helyk alapjn
trtnik.
5. Az egyes oszlopok csak meghatrozott rtkeket vehetnek fel egy adott rtktartomnybl (Di
halmazbl), ezt az rtktartomnyt domain-nek nevezzk. Minden sor minden oszlopban
egy s csakis egy elemi rtk szerepelhet, s egy rtknek szerepelnie is kell. (A gyakorlatban
megengedett, hogy egy attribtum valamelyik elfordulsn ne vegyen fel rtket a domain-
bl, ekkor ez az elforduls definilatlan lesz s NULL rtknek nevezzk.)
6. A sorok sorrendje tetszleges, azonostsuk az rtkk, tartalmuk alapjn s nem a
sorszmukkal trtnik. A sorok szma vltozhat, adott pillanatban a sorok szma megadja a
relci szmossgt.
7. A tblban minden sor klnbz. Nem ltezhet kt teljesen megegyez sor a tblban, mint
ahogy nem ltezik kt azonos elem a relciban, mint halmazban sem.
8. A 7. tulajdonsgbl kvetkezik, hogy minden tblban (relciban) ltezik az oszlopoknak
egy olyan halmaza, mely a tbla (relci) brmely sort egyrtelmen meghatrozza. Ezt az
oszlop kombincit hvjuk a tbla (relci) kulcsnak.
A tovbbiakban a relcit s a tblzatot, mint ekvivalens fogalmakat hasznljuk. Az adatbzis
ebben a modellben relcik, azaz tblk sszessgt jelenti.
A relcis modell esetn a tblk rjk le az egyedeket, a tblk oszlopai egy adott egyedtpus
tulajdonsgai vagy attribtumai, sorai az egyedhalmaz konkrt elfordulsai.
A relcis adatbzis esetn relcisma alatt a relci nevt s attribtumainak halmazt rtjk,
jellse a relci nevvel s utna zrjelben az attribtumok felsorolsval trtnik. A relcis
adatbzis (fogalmi) smja egy vagy tbb relcismt tartalmaz.
Az adott relci sorainak halmazt relci-elfordulsnak nevezzk.
A relcis adatbzishoz tartoz relcik sorainak pillanatnyi halmazt a relcis adatbzis
elfordulsnak nevezzk.

4
2.3. A kulcs fogalma
Kulcs: Azt az attribtumot vagy attribtum halmazt, melynek rtkei egyrtelmen azonostjk a
relcit, a relci kulcsnak nevezzk.
Ez a definci sma (szerkezet) szint, ami azt jelenti, hogy fggetlen a tbla aktulis tartalmtl.
Kulcsok fajti:
Egyszer kulcs: a kulcs egyetlen attribtumbl ll.
sszetett kulcs: a kulcsot kett vagy tbb oszlop kombincija alkotja, elfordulhat az is, hogy az
sszes oszlop szerepel a kulcsban.
Minimlis kulcs: ha sszetett kulcs esetn brmely attribtumot elhagyjuk a kulcsbl, s az gy
megmaradt oszlopok kombincija mr nem rendelkezik kulcs tulajdonsggal, akkor az
sszetett kulcsot minimlisnak nevezzk. Az egyszer kulcs mindig minimlis.
Kulcsjelltek: egy relciban tbb klnbz oszlop vagy oszlopkombinci ltezhet, amely
eleget tesz a minimlis kulcs defincijnak, ezeket a lehetsges kulcsokat kandidate
kulcsoknak vagy kulcsjellteknek nevezzk.
Elsdleges kulcs (primary key): az a kulcs, melyet kivlasztunk a kulcsjelltek kzl, s
kulcsknt hasznlunk. A ki nem vlasztott kulcsjellteket alternatv kulcsnak nevezzk. Az
elsdleges kulcsnak nem lehet NULL az rtke.
Idegen kulcs (foreign key): olyan attribtum vagy attribtum halmaz egy adott relciban,
amelyik egy msik relciban elsdleges kulcsknt szerepel. Az idegen kulcsot tartalmaz
relcit hivatkoz relcinak, a msikat, melyben ez a kulcs elsdleges, hivatkozott
relcinak nevezzk.
Referencial vagy hivatkozsi integritsi szablyok:
ltalnos: Az adatbzisban nem lehet olyan idegen kulcs, melynek rtke nem egyezik meg a
hivatkozott relciban, valamelyik elsdleges kulcs rtkvel.
Ennek a felttelnek az adatbzist rint minden vltoztats utn rvnyben kell maradnia.
Lehetsges vltoztatsok: j adatok bevitele, meglv adatok trlse, meglv adatok mdostsa.

5
2.4. Funkcionlis fggsgek
Defincik:
Funkcionlis fggsg: adott az R relci, azt mondjuk, hogy Y rtelmezsi tartomnya
funkcionlisan fgg az X rtelmezsi tartomnytl (X Y) akkor s csak akkor, ha X minden
rtke egyrtelmen meghatrozza Y-t. Ez a meghatrozs nem csak az aktulis elfordulsokra,
hanem mindig rvnyes.
Funkcionlis teljes fggsg: adott az R relci s az rtelmezsi tartomnyok egy halmaza X.
Y rtelmezsi tartomny funkcionlisan teljesen fgg X-tl, ha Y funkcionlisan fgg X-tl, de nem
fgg funkcionlisan X egyetlen valdi rszhalmaztl sem.
Tranzitv fggsg: adott az R relci. Z rtelmezsi tartomny tranzitvan fgg X rtelmezsi
tartomnytl, ha Z funkcionlisan fgg X-tl (X Z), s Y-tl (Y Z), s Y fgg X- rtelmezsi
tartomnytl (X Y).
Az elsdleges kulcstl minden tartomny funkcionlisan fgg, ha a kulcs egyben egyszer is, akkor
ez a fggsg teljes.

2.5. Normlformk
1. normlforma (1NF): az R relci els normlformban van, ha a relciban szerepl minden
rtk elemi, azaz minden attribtum minden sorban csak egy rtket vesz fel az rtelmezsi
tartomnybl.
2. normlforma (2NF): az R relci msodik normlformban van akkor s csak akkor, ha 1NF-
ben van s minden olyan attribtuma, mely nem rsze az elsdleges kulcsnak, funkcionlisan
teljesen fgg az elsdleges kulcstl.
3. normlforma (3NF): az R relci harmadik normlformban van akkor s csak akkor, ha 2NF-
ben van s minden olyan attribtuma, mely nem rsze az elsdleges kulcsnak, funkcionlisan
teljesen fgg az elsdleges kulcstl s csak attl.
Msik definici: Az R relci harmadik normlformban (3NF) van akkor s csak akkor, ha
2NF-ben van s nem tartalmaz tranzitv fggsgeket.

6
3. Tervezs
3.1. Informcis rendszerek tervezse

Megvalsthatsg
vizsglata

A kvetelmnyek
sszegyjtse s elemzse

Tervezs

Adatbzis- Alkalmazs-
tervezs fejleszts

Prototpus Megvalsts
zemeltetsi verzi
kszts elksztse

rvnyessg vizsglat s
tesztels

zembehelyezs

7
3.2. Adatbzis-tervezs

Lers nyelve Eredmny

Egyed-kapcsolat Fogalmi Egyed-kapcsolat


model diagram
tervezs

Relcis Logikai Relcis sma


model (tblzatok)
tervezs

Fizikai Fizikai sma


SQL
(utastsok
nyelv
tervezs sorozata)

Utastsok
Adatbzis ltrehozsa lefuttatsa

Teszt adatok betltse


Tesztels

les adatok betltse


zembehelyezs

Karbantarts

8
3.3. Egyed kapcsolat (E/K) adatmodell (Entity Relationship model)
3.3.1. Az egyedhalmazok kztti kapcsolatok
Az egyed-kapcsolat modellben a kapcsolatok kt vagy tbb egyedhalmazt kapcsolnak ssze,
mindig ktirnyak s mindkt irnyban nvvel rjuk le ket. Ezeket a kapcsolatokat tbbfle
szempontbl vizsglhatjuk.
I. Ha modellezni akarjuk a vals vilgot, akkor gyakran szksges, aszerint osztlyozni a
kapcsolatokat, hogy a kapcsolatban ll egyedhalmazok egyes egyedeinek hny egyed felel
meg a msik egyedhalmazbl. A lehetsges kapcsolattpusok:
nincs kapcsolat az egyedhalmazok kztt.
egy-egy (1:1) kapcsolat. Az egyik egyedhalmaz minden egyes elemnek egy s csak
egy elem felel meg a msik halmazbl, s viszont.
egy-sok (1:N) vagy a msik irnybl sok-egy (N:1) kapcsolat. Az egyik halmaz
elemeinek tbb elem is megfelelhet a msik halmazbl, a msik halmaz minden
elemhez viszont csak egy elem tartozik az els halmazbl.
sok-sok (M:N) kapcsolat. Mindkt egyedhalmaz brmely elemhez tbb elem
tartozhat a msik egyedhalmazbl.
II. Az egyedhalmazok kztti kapcsolatban rsztvev egyedek szmt vizsgljuk, azt
nzzk, hogy minimum hny egyede az A halmaznak tartozhat egy egyedhez a B
halmaznak. rtke nulla vagy egy lehet. A nulla azt fejezi ki, hogy nem ktelez, hogy
A minden egyedhez tartozzon legalbb egy egyed a B-bl, azaz a kapcsolat tetszleges
(optional). Az egy azt jelenti, hogy A minden egyedhez tartozik legalbb egy egyed B-bl,
azaz a kapcsolat ktelez (mandatory).
III. A kapcsolatok csoportostsa aszerint trtnik, hogy hny egyedhalmaz vesz rszt a
kapcsolatban:
Egy egyedhalmaz: az egyedhalmaz sajt magval ll kapcsolatban, rekurzv kapcsolat.
Kt egyedhalmaz kztti kapcsolat, ez a leggyakoribb.
Kettnl tbb egyedhalmaz ll egymssal kapcsolatban.
IV. Specilis kapcsolat az un. isa kapcsolat (az angol is a szkapcsolatbl szrmazik az
elnevezs).
Azt mondjuk, hogy A egyedhalmaz isa kapcsolatban van B egyedhalmazzal (A isa B), ha az
A egyedhalmaz rszhalmaza B -nek, vagy mskppen B kiterjesztse A -nak. Ebben az
esetben A rkli B halmaz valamennyi tulajdonsgt (attribtumt), de ezenkvl A
rendelkezhet mg egyb attribtumokkal is, melyek nem jellemzik B azon elemeit, amelyek
nem elemei A -nak is. Az A kulcsattribtumai, azok az attribtumok, amelyek az a
elfordulst egyrtelmen azonostjk a B ben, vagyis amelyek a B-ben is
kulcsattribtumok.

9
3.3.2. Az egyed-kapcsolat modell jellsrendszere
Az egyed-kapcsolat modell grafikus megjelentst egyed-kapcsolat diagramnak nevezzk. A
klnbz tervez eszkzk a fogalmi sma ltrehozsakor, az egyed-kapcsolat diagram
megrajzolsnl klnbz jellsi rendszerekkel dolgozhatnak, ezen jellsek egyike az un. CHEN
jellsi rendszer, melynek egy egyszerstett vltozatt fogjuk a tovbbiakban hasznlni:
Az egyed jellse tglalappal trtnik, belsejben az egyedhalmaz nevvel:

HALLGAT

Az egyed tulajdonsgait (attribtumait) ellipszis jelzi, amit egy vonallal ktnk az egyedhez.
A tulajdonsg nevt az ellipszisbe rjuk, a kulcs attribtumokat alhzssal brzoljuk:

NV

A kapcsolatot rombusszal jelljk, belsejben a kapcsolat nevvel, s ebben az esetben


mindkt irnyban ugyanez a nv hatrozza meg a kapcsolatot:

TANULJA

A kapcsolat az egyedhalmazokat rnytott vagy rnytatlan llel kti ssze, annak


megfelelen, hogy a kt egyed kztt egy vagy sok jelleg a kapcsolat. A nyl mindig az
egy rnyba mutat, a sok kapcsolatot sszekt l rnytatlan. Az ltalunk hasznlt
egyszerstett jellsi rendszernl nem jelljk, hogy a kapcsolat opcionlis vagy ktelez.
Ha A s B egyedhalmaz kztt isa kapcsolat van (A isa B), akkor csak a B fel vezet l kap
nylat.
Elfordulhat, hogy a kapcsolatban egy egyedhalmaz csak egyetlen attribtummal rendelkezik,
ilyenkor a halmaz neve lehet az attribtum neve is, s tulajdonkppen ezt nem is
egyedhalmazknt fogjuk jellni, hanem attribtumknt, amely kzvetlenl a kapcsolathoz lesz
ktve egy llel, az ilyen tulajdonsg tulajdonkppen magt a kapcsolatot jellemzi, a kapcsolat
attribtumaknt fogjuk kezelni.

10
3.4. Plda: ruhzi adatbzis tervezse.

ANEV BER
SNEV SCIM

ISA
ALKALMAZOTT FONOK

SZALLITOK

VEZETI
ARAK
TARTOZIK
RSZ#

RESZLEG SZALLIT

RNEV

ELAD
CIKK#

CIKK
CNEV
R#

RENDELESEK TARTALOM

MENNYISEG
DATUM

RENDELI VEVOK VNEV

MERLEG VCIM

11
4. Ajnlott irodalom
1. Demetrovics, Denev, Pavlov: A szmtstudomny matamatikai alapjai,
Tanknyvkiad, Budapest
2. Halassy Bla: Az adatbzistervezs alapjai s titkai,
IDG Magyarorszgi Lapkiad Kft., 1994
3. Stolnicki Gyula: SQL kziknyv, ComputerBooks, 2001
4. Jeffrey D. Ullman, Jennifer Widom: Adatbzisrendszerek Alapvets
Panem Kft, 1998.
5. Hector Garcia Molina, Jeffrey D. Ullman, Jennifer Widom:
Adatbzisrendszerek megvalstsa, Panem Kft, 2001.
6. Bkssy Andrs, Demetrovics Jnos: Eladsok adatbzis szerkezetekbl,
Egyetemi jegyzet, Budapest, 1999. ELTE
7. Martin Gruber: Mastering SQL; SYBEX, 2000.
8. Martin Gruber: SQL A-Z, SYBEX KISKAPU 2003.

12

You might also like