Ugrás a fő tartalomra

Adatbázis kezelés alapjai





ADAT: Formalizált, általában rögzített ismeret, olyan jelkonfiguráció (jelsorozat), amely valamilyen ismeretet hordoz


Jel és adat kapcsolata:
Adat rögzítése: jelsorozat – adathordozó
Értelmezés: jelek – kapcsolódás – jelentés
Szimbólumok: piktogramok, ikonok, karakterek…
KÓD: Egyezményes szimbólum („jelsorozat”),
Kód = szimbólum + leképzési szabály
Kódolás – dekódolás
Kódtípusok


Adatbázis: logikailag összefüggő adatok rendezett gyűjteménye
Rendezett gyűjtemény: úgy van rendezve, hogy könnyű legyen a tárolás, módosítás és a lekérdezés
Összefüggő adatok: olyan adatok, amelyek lefedik egy felhasználó csoport érdeklődési körét
Meta adatok: leírja az adott adat tulajdonságait, az adatraktárban találhatók (repository)





Redundancia problémák:
– felesleges tárolás
– egy módosítás több helyen
– inkonzisztens adatok


Reláció: Adat tartományok (domain) Descartes szorzatának a valóságos objektumokat leképező részhalmaza.Tranzitív függés van egy relációban, ha határozott, minden tartománya függ az azonosító egészétől, de van olyan leíró tartománya, amely a reláció egy vagy több tartományát meghatározza. A reláció 2. Normál Formában van
A kapcsolati fok kifejezi, hogy az egyik reláció bármelyik sora kölcsönösen a másik reláció hány sorához kapcsolódhat
Reláció: egy kétdimenziós tábla, mely megnevezett oszlopokból és korlátlan számú sorból áll
Attribútum: egy nevezett oszlop
Rekord: egy sor


A reláció oszlopainak száma az a reláció fokszáma, sorainak száma pedig a kardinalitás.


Relációk tulajdonságai:
– minden relációnak egyedi neve van
– egy sor és oszlop kereszteződésében egyetlen érték szerepel
– minden sor egyedi
– minden oszlopnak egyedi neve van a reláción belül
– az oszlopok és sorok sorrendje lényegtelen


Adatok integritása:
– tartomány integritás à attribútum értékkészletének megkötése
– entitás integritás à minden relációnak kell definiált elsődleges kulcs
– referenciális integritás à az idegen kulccsal hivatkozott rekordnak léteznie kell
– működési korlátozások à olyan megkötések amelyek kimutatnak a relációs modellből


Kulcs: olyan attribútum halmaz, amelytől funkcionálisan függ a többi attribútum
Kulcs fajták:
– elsődleges kulcs
– összetett kulcs
– külső/idegen kulcs
Funkcionális függőség: „A” attribútum halmaz funkcionálisan függ „B” attribútum halmaztól, ha „B” értéke egyértelműen meghatározza „A”-t.


Műveletek:
– Kiválasztás: Azok a sorok, amelyek megfelelnek a feltételnek
– Vetítés: Azok az oszlopok, amelyek szerepelnek a listában
– Descartes/direkt szorzat:
– Theta-join:
– Equi-join: egyenlőségjel operátort tartalmaz
– Natural-join: Equi-join az azonos nevű oszlopokon
– Outer-join: beleveszi a NULL értékeket is


Halmazműveletek: unió, metszet, különbség. Halmazműveleteket csak unió kompatibilis relációkon lehet végrehajtani, azaz ugyanannyi attribútumuk van, és a megfelelő attribútumok értelmezési tartománya ugyanaz.


Anomáliák:
– beszúrási:
– törlési:
– módosítási:


Normalizáció:
– 1NF: egy sor és egy oszlop kereszteződésében egy érték szerepel
– 2NF: 1NF + egyetlen attribútum sem függ egyetlen kulcsjelölt valódi részhalmazától
– 3NF: 2NF + nincs benne tranzitív függőség
– BCNF: 1NF + FF-ek determinánsai kulcsjelöltek


ANSI/SPARC architektúra szintjei:
– külső szint: egyes felhasználók/alkalmazások nézetei
– koncepciós szint: a közösség/egész vállalat nézete
– belső szint: az adat fizikai reprezentációja a számítógépen


Egyed-kapcsolati modell:
– az adatbázis struktúráját és korlátozásait modellezi
– sok változáson ment keresztül
– Chen alkotta meg 1976
– A jelölésre nincs szabvány
– Részei: entitások,kapcsolatok, attribútumok
– Egyed: olyan dolog, amiről adatokat szeretnénk tárolni
– Attribútum: minden egyedhez tartozik egy, vagy több attribútum, olyan tulajdonság, ami a felhasználó számára érdekes
– Az egyszerű attribútum nem bontható értelmes részekre
– Az összetett attribútum értelmes részekre bontható
– A többértékű attribútumok tartalmazhatnak ugyanazon egyed-példány esetén több értéket ugyanarra az attribútumra
– A származtatott attribútum olyan attribútum melynek értéke kiszámolható más hozzákapcsolódó attribútumok értékeiből
– A kapcsolatok az egyed-kapcsolati modell összekötő elemei, egy vagy több egyedet kapcsolhat össze, egy értelmes összefüggés egyedtípusok között
– A kapcsolat attribútumai olyan attribútumok, amelyek egyik résztvevő példányra sem jellemző, hanem a köztük lévő kapcsolat egy tulajdonsága
– Az összekapcsoló entitások a kapcsolatok helyére kerülnek, több-többes kapcsolat esetén


Kapcsolatok ordinalitása és kardinalitása:
Az ordinalitás azt jelzi, hogy egy egyedek közti kapcsolat kötelező vagy opcionális. {0;1}
Kardinalitás: a kapcsolat kardinalitása azt mutatja meg, hogy az adott egyedtípusból hány példány vehet és hány példány vesz kötelezően részt. A kardinalitás egy egyedtípus előfordulásainak maximumát jelzi egy kapcsolatban. {1;n}
Minimum kardinalitás: minimális példányszám az egyedből, amelynek részt kell vennie a kapcsolatban
Maximum kardinalitás: az egyedpéldányok maximális száma, ami egy adott egyedhez kapcsolódhat a kapcsolatban


SQL nyelv részei:
– DDL (Data Definition Language)
o Felhasználói objektumok kezelése
o Tranzakción kívűl futnak
– DML (Data Manipulation Language)
o Beszúrás
o Módosítás
o Törlés
o lekérdezés
– DCL (Data Control Language)


Adattípusok:

Oracle SQL
Number(p,s) Int
Varchar(n) Float
Varchar2(n) Char
Char(n) Varchar
Date Money
BLOB Datetime
LONG Binary
ROWID



Táblák létrehozása:
Create table név (
Oszlopnév típus DEFAULT default érték
NULL|NOT NULL oszlop megszorítások
…,
Tábla szintű egszorítások
)


Megszorítások:
– primary key: CONSTRAINT név PRIMARY KEY (oszlopok,…)
– unique key: CONSTRAINT név UNIQUE (oszlopok)
– check: CONSTRAINT név CHECK (megszorítások)
– foreign key: CONSTRAINT név FOREIGN KEY (oszlopok)
REFERENCES tábla (oszlopok,…) ON DELETE
CASCADE


Tábla struktúra módosítása:
– alter table tábla név add (
o oszlopok
o megszorítások
– drop table táblanév
– truncate table táblanév


Beszúrás: insert into táblanév (o1,…) values (v1,…)
Insert into táblanév (o1,…) lekérdezés


Törlés: delete from táblanév where feltételek


Módosítás: update táblanév set o1=v1,… where feltételek


Natural join: select emp.name, dept.deptno from emp, dept where emp.deptno=dept.deptno
Outer join : select emp.name, dept.deptno from emp, dept where emp.deptno=dept.deptno(+)


Duplikátumok kiszűrése: select distinct city, state from authors


Oszlopfüggvények: AVG, COUNT, DISTINCT COUNT, MIN, MAX, SUM


Halmazműveletek: select firstname ||’’|| lastname, city, postalcode from employees


A tranzakció fogalma: a munka egy logikai egysége. A tranzakció több végrehajtandó folyamat, amely logikailag egyetlen egységet alkot. A tranzakciók atomiak, vagyis oszthatatlanok. Vagyaz egészet végrehajtjuk, vagy egyetlen részét sem. A tranzakciók tartósak, vagyis ha egyszer végrehajtottuk, akkor annak eredménye már nem veszik el.
Kétféle katasztrófa fenyegeti a tartósságot, a soft crash és a hardcrash.


Soft crash: elveszik a memória tartalma. de a diszkek nem sérülnek.


Hard crash: bármi, aminek eredményeképpen a diszk tartósan olvashatatlanná válik. Vissza kell állítani az adatbázist.


PL/SQL: kiterjesztett SQL (ciklus, if,…).


Kivitelezés: BottomUp (alulról felfelé): a legkisebb önálló feladat modult elkészítve és tesztelve, összeállíthatók a nagyobb feladat egységek, végül az egész program
Objektum orientáltság: adat és metódus (funkció) összekapcsolása, és így egy egységként (objektumként) kezelése




Tárolt eljárás: PL/SQL utasítások gyűjteménye, ami egy feladatot valósít meg


Trigger: A táblákon végrehajtott insert, update, delete utasítások esetén automatikusan végrehajtandó tárolt eljárás indító.
Típusai: sor és utasítás triggerek, BEFORE és AFTER triggerek, INSTEAD OF triggerek.


Elosztott adatbáziskezelő-rendszerek: logikailag egyetlen adatbázis, amely több számítógépen van tárolva (több helyen), és hálózattal vannak összekötve. Központilag adminisztrált, a helyi példányok külön-külön rugalmasak.

Megjegyzések