I. előadás II. előadás III. előadás IV. előadás V. előadás VI. előadás

Slides:



Advertisements
Hasonló előadás
2012. tavaszi félév Vitéz Gergely. A diasor ismerete nem helyettesíti a tankönyvet, és a példatárat. A diasor ismerete szükséges, de nem elégséges feltétele.
Advertisements

10. gyakorlat SQL SELECT.
Adatbázis-kezelés Készítette: Asztalos Péter január 12.
2012. tavaszi félév Vitéz Gergely. A diasor ismerete nem helyettesíti a tankönyvet, és a példatárat. A diasor ismerete szükséges, de nem elégséges feltétele.
Lekérdezések SQL-ben Relációs algebra A SELECT utasítás
ADATBÁZISOK.
A normalizálás az adatbázis-tervezés egyik módszere
Adatbázis rendszerek I Relációs kalkulus Általános Informatikai Tsz. Dr. Kovács László.
Anyagadatbank c. tárgy gyakorlat
Adatbázisok SQL. TARTALOM Szijártó M.2 Témakörök  Az SQL tulajdonságai  A műveletek fajtái  Objektum-műveletek  Lekérdezések Tulajdonságok és műveletek.
Adatbázis-kezelés.
EXCEL TÁBLÁZATKEZELŐ ALKALMAZÁS
2012. tavaszi félév Vitéz Gergely. A diasor ismerete nem helyettesíti a tankönyvet, és a példatárat. A diasor ismerete szükséges, de nem elégséges feltétele.
Delphi programozás alapjai
Adatbázis kezelés. Hierarchikus modell Legrégebbi modell, ma már nem használatos. Az adatokat fákban tároljuk, ahol minden pont a szegmens adatokat, és.
5. GYAKORLAT SQL CREATE TABLE, aktualizálás. S QL Structured Query Language A relációs adatbáziskezelés szabványos nyelve Nem algoritmikus, de beépíthető.
– Adattáblák & adatok kezelése – Tarcsi Ádám január Adatbázis gyakorlat.
Többtáblás lekérdezések, allekérdezések Rózsa Győző
Microsoft Access V. Készítette: Rummel Szabolcs Elérhetőség:
SQL – DQL (Data Query Language ) adat lekérdezések
Adatbázis-kezelés.
SQL Táblák összekapcsolása lekérdezéskor Aliasok Allekérdezések
Adatbázis rendszerek II.
az MSAccess programmal
Adatbázis-kezelés ACCESS program:
Delphi programozás alapjai Nagyváradi Anett PTE PMMK MIT.
ADATBÁZISOK
Adattáblák létrehozása, módosítása, tranzakciók, megszorítások Rózsa Győző.
Adatbázis-kezelés
SQL.
Az SQL nyelv alapjai.
DML. Új rekord beszúrása: INSERT INTO tábla (oszlop1,oszlop2,…) VALUES (érték1,érték2,…); Rekord módosítása: UPDATE tábla SET oszlop = érték WHERE feltétel;
Access XP Kifejezés-szerkesztő Összehasonlító operátorok:
Tervezés, Normalizálás
Adattáblák létrehozása, módosítása, tranzakciók, megszorítások Rózsa Győző.
A diasor ismerete nem helyettesíti a tankönyvet, és a példatárat. A diasor ismerete szükséges, de nem elégséges feltétele a minimum elégséges érdemjegynek!
Adatbázis-kezelés SQL-lel
SQL DDL DATA DEFINITION LANGUAGE. Táblák létrehozása CREATE TABLE táblanév ( oszlopnév1 típus(méret) /DEFAULT érték/ /NOT NULL/, oszlopnév2 típus(méret)
Készítette: Tóth Ervin
Az SQL nyelv. SQL Az SQL utasításait két fő csoportba szokták sorolni: DDL (= Data Definition Language): adatstuktúra definiáló utasítások. DML (= Data.
Készítette: Rummel Szabolcs Elérhetőség:
SQL-Structured Query Language. Parancs(utasítás) csoportok CREATE - táblák létrehozása ALTER – táblák módosítása DROP – táblák törlése DDL –Data Definition.
11. tétel Adatbázis táblái közti kapcsolatok optimalizálása
Adatbázis kezelés. Az adatbázis tágabb értelemben egy olyan adathalmaz, amelynek elemei – egy meghatározott tulajdonságuk alapján – összetartozónak tekinthetők.
Adatbázis kezelés.
Adatbázis-kezelés.
– SQL 3: SELECT - 1. – Tarcsi Ádám, január 31. Adatbázis gyakorlat.
– SELECT - 2. – Tarcsi Ádám március Adatbázis gyakorlat.
Adatbázisok Fleiner Rita, Tankönyv:
Kulcsok meghatározása a táblákban
Adatbázis alapfogalmak
Ma az un. Relációs adatmodelleket használjuk.
5. gyakorlat Fleiner Rita.
Többtáblás lekérdezések, hierarchikus lekérdezések, allekérdezések
Webprogramozó tanfolyam
SQL. SQL jellemzői Nem algoritmikus (nem tartalmaz algoritmikus szerkezeteket: ciklus, eljárás, elágazás) Nem rekurzív (önmagát nem hívhatja) Halmazorientált.
Adatbázis-kezelés. Alapfogalmak Adat: –észlelhető, felfogható ismeret –jelsorozat –valakinek, vagy valaminek a jellemz ő je –tény, közlés Információ:
Adatbázis-kezelés 3-4. Adatok lekérdezése utasítás általános formája SELECT [ALL/DISTINCT] {*/, …, } FROM [ ], …, [ ] [WHERE GROUP BY, …, HAVING ORDER.
– SELECT - 1. – Tarcsi Ádám január Adatbázis gyakorlat.
Adatbáziskezelés. Adat és információ Információ –Új ismeret Adat –Az információ formai oldala –Jelsorozat.
Fájlszervezésen alapuló tervezés Adatfájlok szerkezete, adathierarchia Adatfájlok szerkezete, adathierarchia Fájlok csoportosítása funkciók.
Gazdasági informatika II (SZIE GTK GVAM 1. évfolyam) 2009/2010. tanév 2. félév.
Az adatbázis az adatok és a köztük lévő összefüggések rendszere, amelyet egymás mellett tárolunk. Nagyon fontos, hogy az adatbázisunk szerkezetét jól megtervezzük,
Készítette: Kiss András
Alapfogalmak Adat: rögzített ismeret
Adatbázis alapismeretek
Adatbáziskezelés.
Logisztikai projekt - gyakorlat Adatbázis-elmélet
Relációs adatmodell, normálformák
Adatbázis-kezelés 2. Relációs adatbázisok.
Előadás másolata:

I. előadás II. előadás III. előadás IV. előadás V. előadás VI. előadás VII. előadás

I. ELŐADÁS

Az ismeretek rendszer szemléletű közelítése ADATMODELLEZÉS Az ismeretek rendszer szemléletű közelítése 2002.03.18

A GAZDASÁGI ÉS INFORMATIKAI RENDSZER VISZONYA ERŐFORRÁSOK Fő működési folyamat TERMÉKEK KIMENET (OUTPUT) BEMENET (INPUT) INFORMÁCIÓ INFORMÁCIÓ ADATRÖGZÍTÉS MEGJELENÍTÉS INFORMÁCIÓS RENDSZER TÁROLÁS ADATBÁZIS TRANSZFORMÁCIÓ ADAT- FELDOLGOZÁS ADATBÁZIS KEZELŐ RENDSZER

Mire van tehát szüksége a gazdasági rendszernek a működési folyamat fenntartásához? Erőforrásokra és ezek között ÚJ, HASZNOSÍTHATÓ ISMERETEKRE, amely nem más mint az Adat: formalizált, rögzített ismeret értelmezés INFORMÁCIÓ Hogyan keletkezik az információ? ? Mi az adat? A rendszerből közvetlenül, érzékeléssel feldolgozott adatokból ADAT hírfolyamat

kereskedelmi igazgató EMBEREK 2 690315 4567 üzletkötő 1 521107 5469 Szép Ilona őrmester 96 000Ft Szabó XXIII József 42 000Ft 2 590315 4567 1 680115 1234 titkárnő kereskedelmi igazgató Bak Anita Tört Elek 86 000Ft 185 000Ft

ANYAGOK, ALKATRÉSZEK I.oszt készlet gyújtógyertya 192658472 1650Ft kg ementáli sajt m3 paprika kg 111153789 db M8 fényes sóder 110237844 1650Ft 398500234 198500123 1650Ft 3200Ft Pentium II. 56Ft csavar db mikro-processzor 236598466 db 152365981 kg I.oszt 1650Ft góliát festék 56Ft 112389450 Alkáli elem 2200Ft 136598463 db 136598321 db földeletlen kijelzős 217Ft Konnektor dugó 678Ft fali kapcsoló

MUNKA 2-ME00123/99 minőségellenőrzés BSZ-1287-99 1999. nov.12. 18 db. 65-1287-99 belső szállítás út felbontás 1999. jún. 21. 1998. jan. 21. 165 tonna-km FE/1447-99 456 m szobafestés 1999. dec. 11. 5621-FSZLA 5640 m2 szoftver fejlesztés 123-456/99 1997. jún. 30. 99/421 tanítás 5600 ember-óra kertépítés 1999.máj. 05. 1999. szept. 05. 1800 m2 162 óra

TERMÉKEK Mivel írhatjuk le a termékeket, melyek a műszaki-gazdasági jellemzők? TERMÉK cikkszám, megnevezés, gyártási_szám, típus, minőség, méret, súly, önköltség, ár, ... Sütő Gergely

PÉNZ Melyek a pénz jellemzői? PÉNZ pénznem_kód, megnevezés, kibocsátó_ország, árfolyama, árfolyam_érvényesség_időpontja, ... Sütő Gergely

GÉPEK, KÉSZÜLÉKEK, SZERSZÁMOK Mivel írhatjuk le egyértelműen a munka eszközeit? TÁRGYI_ESZKÖZ eszköz_kód, megnevezés, értéke, szervezet_kód, üzembe_helyezés_időpontja, ... Sütő Gergely

SZERVEZETEK, CÉGEK Mi jellemzi a munka helyszínét, eszkö- zeit, a munkát végző dolgozókat, stb. vagyis a SZERVEZETet közösen? SZERVEZET  szervezet_kód, megnevezés, költséghely_kód, szervezet_címe, ... Sütő Gergely

ESEMÉNYEK A különböző események is leírhatók adatokkal, tekintsük ezeket is „egyednek”! Például: anyag bevételezés a raktárba (készletváltozás) KLT_forgalom  bizonylatszám, dátum, mozgásnem, raktár_kód, partner_kód, cikkszám, mennyiség, ... Sütő Gergely

(ADAT)EGYED Az előzőekben a jellemzők sorával megadott minden ENTITÁS Az előzőekben a jellemzők sorával megadott minden materiális, fogalmi objektum ENTITÁS, a továbbiakban (ADAT)EGYED

Ezeket a jellemzőket jelsorozattal írjuk le. ADAT forma: jelsorozat tartalom: a jelsorozat jelentése, az az ismeret, amit a jelsorozat hordoz szerkezet: adatok közötti összefüggés A gazdasági rendszerekben a különböző dolgokról, jelenségekről általában több jellemzőt adhatunk meg. Ezeket a jellemzőket jelsorozattal írjuk le. Ha a jellemző és a jelsorozat között egyértelmű, és kölcsönös megfeleltetés van kódról beszélünk.

Kód és kódolás értelmezése DEKÓDOLÁS Ki Ő? KÓDOLÁS

A kód fogalmának kiterjesztése Tágabb értelemben az írás is és minden, az ismeretek rögzítésére alkalmas jelsorozat (kotta, rajz-jelek stb.) kódnak tekinthető. A továbbiakban azonban a hétköznapi jelrendszereket nem nevezzük kódoknak.

A kód szűkített értelmezése A kód a valós világ, a rendszerek objektumainak rövid, tömör, egyértelmű jellemzésére szolgáló jelsorozat. A kódolás két halmaz összerendelése, vagyis felfoghatjuk úgy, mint egy függvényt, melynek értelmezési tartománya és értékkészlete is diszkrét halmaz. Maga a kód pedig ebben az értelemben a függő változó intervallumába eső érték.

Kódok kategorizálása forma funkció szerkezet tartalom Sütő Gergely

A kód forma megadja a leképzésre szolgáló jelek intervallumát: numerikus {0, 1, 2,… 9} alfabetikus {a, b,… z, A, B, …Y, Z} alfanumerikus {<számok>,<betűk>, <egyéb karakterek, pl: írásjel, műveleti jel, ...> egyéb kódok (pl.: vonal, grafikus) Sütő Gergely

A kód funkciója egy adott objektum jellemzésében betöltött szerepét adja meg azonosító csoportképző tranzakció állapotjelző leíró Sütő Gergely

A kód szerkezete a jelkonfigurációt határozza meg egyszerű sorozat struktúrált Sütő Gergely

A kód tartalma a leképzett objektum csoportjait fejezi ki nemzetközi gazdasági számítástechnikai természetes egyéb (műszaki, technikai) Sütő Gergely

EGYED TULAJDONSÁG KAPCSOLAT A gazdasági rendszerek objektumai, melyeket adatokkal jellemezhetünk A gazdasági rendszerek működését meghatározó, befolyásoló anyagi és szellemi tényezők (dolgok, emberek, események, jelenségek stb.) objektum TULAJDONSÁG Az egyedeket jellemző elemi adat, mely egy konkrét egyedet a többitől megkülönböztet, vagy azonos kategóriába sorol Az egyedekben leképzett objektumok viszonyát tükröző, lényegi és tartós összefüggés az adatok között KAPCSOLAT

kereskedelmi igazgató EGYED DOLGOZÓ 2 690315 4567 üzletkötő 1 521107 5469 őrmester Szép Ilona Szabó XXIII József 96 000Ft Egyed típus 42 000Ft 2 590315 4567 Egyed előfordulás titkárnő 1 680115 1234 kereskedelmi igazgató Bak Anita Tört Elek 86 000Ft 185 000Ft

kereskedelmi igazgató TULAJDONSÁG Tulajdonság elő- fordulás (érték) Tulajdonság típus 2 690315 4567 DOLGOZÓ NEVE 1 521107 5469 Szabó XXIII József üzletkötő őrmester Szép Ilona Bak Anita 96 000Ft Tört Elek 42 000Ft 2 590315 4567 titkárnő 86 000Ft 1 680115 1234 kereskedelmi igazgató 185 000Ft

Az egyed tehát entitás  tulajdonság sor Az egyedek közül melyek tartoznak egy típusba? Típus Személyi szám Személyi szám Gyártási szám Név Név Beosztás beosztás Eladási ár Ügyfél azonosító Teljesítmény Bér Bér Felvett összeg Személyi szám Név Bizonylatszám Pénztár Beosztás Mozgásnem Munkaszám Munkaszám Bér Mozgás dátuma Teljesített mennyiség Teljesített mennyiség Minőségi kód Cikkszám Nyilvántartási ár Ráfordított idő Ráfordított idő Megnevezés Amelyek azonos tulajdonság típusokkal jellemezhetők. Az egyed tehát entitás  tulajdonság sor

Kapcsolat előfordulás SZERVEZET Üzem Központ Bp.. XIX. Fő u. 2. 32 22 Piripócs Ó u. 7. Kapcsolat előfordulás Kapcsolat típus DOLGOZÓ 22 Szép Ilona 32 22 1 521107 5469 22 őrmester Szabó XXIII József Bak Anita 22 Tört Elek 42 000Ft

EGYEDTÖRTÉNET Az egyeden végezhető műveletek (funkciók) leírása az egyed keletkezésétől (létrehozásától) megszűnéséig (törléséig).

DIALÓGUS Az adatbáziskezelő rendszer és a végfelhasználó közötti „párbeszéd” (valamint ennek módszerei, tartalmi és formai kellékei)

ADATBÁZIS Számítógépen tárolt, egymással bonyolult összefüggésben álló adatok rendszere, összetett logikai adatszerkezet fizikai leképzése, amely tartalmazza az adat- és szerkezetleírást valamint az adatkezelő eljárásokat is.

AZ ADATBÁZIS SZERVEZÉS FÁZISAI Fogalmi ( koncepcionális) modell A valós világ objektumai és összefüggései (rendszer) Valósághű leképzés Logikai modell NORMALIZÁLÁS Konzisztens szerkezet Fizikai modell ADATBÁZISKEZELŐ ADATBÁZIS Megvalósítás Hozzáférés Elhelyezés

II. ELŐADÁS

A RELÁCIÓS MODELL A normalizálás mint a logikai adatszerkezet kialakításának módszere és eszköze Sütő Gergely

A relációelmélet alapjai d2 Descartes szorzat fekete éjkék piros türkiz ezüst fehér rádió riasztó d1 45 LE 60 LE 92 LE 125 LE 160 LE d1: kategória (teljesítmény) d2: szín d3: ajándék felszerelés d3 Sütő Gergely

A relációelmélet alapjai A reláció matematikai leírása: R<d1, d2, d3, ... di, ... dn> A reláció tehát egy n dimenziós térben elhelyezkedő pontok halmaza. Minden pont egy valós objektumot (egyed előfordulás) reprezentál, amelyet n számú jellemző adattal (tulajdonság előfordulás) lehet megadni. A reláció tehát nem más mint egy egyed típus, amelyet a tulajdonság(típusok) sorával adunk meg (entitás). Sütő Gergely

RELÁCIÓ Adat tartományok (domain) Descartes szorzatának a valóságos objektumokat leképező részhalmaza. Sütő Gergely

A reláció jellemzői RELÁCIÓ = TÁBLÁZAT A reláció foka (n) A konkrét reláció táblázatos formában írható le. A továbbiakban: RELÁCIÓ = TÁBLÁZAT Általános szabályok: a reláció neve egyedi a reláción belül nincs azonos nevű oszlop oszlop sorrend tetszőleges sorok felcserélhetők nincs két teljesen azonos sor minden relációnak van (a sort) azonosító (egyszerű vagy összetett) tartománya R A reláció foka (n) A reláció mérete (k) Sütő Gergely

Szervezeti_egység_kód Név anomáliák DOLGOZÓ<törzsszám, személyi_igazolvány_száma, TAJ, jogosítvány_száma, név, besorolási_bér, lakáscím, szervezet_kód, egység_szám, név, ...> szinonim név: ugyanannak a tartománynak fogalomnak több neve is van  egységesítés d  di= dk; d  di dk; d  di dk szervezet_kód egység_szám Szervezeti_egység_kód homonim név: különböző fogalmak neve azonos  minősítés ? név név Dolgozó_név Szervezet_név Sütő Gergely

Minta reláció DOLGOZÓ<törzsszám, személyi_igazolvány_szám, dolgozó_TAJ, jogosítvány_száma, dolgozó_név, dolgozó_neme, leánykori név, besorolási_bér, lakáscím, szervezeti_egység_kód, szervezet_név, gyermek_TAJ, gyermek_neve, nyelv_kód, nyelv_megnevezés, nyelvvizsga_dátum> Rövidítsünk! DOL<tsz, szig, dT, jogsi, dn, nem, len, bér, cím, szek, szen, gT, gn, nk, nm, nd> A tulajdonságot (ETK modell) és a tartományt (domain relációs modell) a továbbiakban tekintsük szinonim fogalomnak! Sütő Gergely

A tulajdonságok belső szerepe DOLGOZÓ < törzsszám, személyi_igazolvány_száma, jogosítvány_száma, dolgozó_név, besorolási_bér, ...> A tartomány jellemző ereje: a relációnak az a tartománya, amely minden sorban rendelkezik értékkel erősen jellemző, amely nem minden sorban vesz fel értéket gyengén jellemző. Sütő Gergely

A tulajdonságok belső szerepe Azonosító: az(ok) a tartomány(ok) a reláción belül, melynek bármely értéke egy és csakis egy sort jellemez. Leíró: azok a tartományok a reláción belül, melynek egy értéke több sorra is jellemző lehet. ? Sütő Gergely

Milyen a jó azonosító? A jó azonosító kritériumai: erősen jellemző stabil konzisztens struktúra fix hosszúság rövid (a jelsorozat kevés jelből áll: pl. törzs-szám) a benne szereplő jelek intervalluma szűk (kevés féle jelet tartalmaz: pl. csak számok) Sütő Gergely

Az azonosító kiválasztása Az azonosító ezek alapján Alternatív azonosító (azonosító jelölt): az a tartomány(ok) a reláción belül, amely rendelkezik az azonosító kritériumaival. Belső azonosító: kódolása csak a rendszeren belül ismert Külső azonosító: kódolása a rendszeren kívül történik Sütő Gergely

A "kulcs" fogalma Az egyed jellemzésében és kezelésében kitüntetett szerepet játszó tulajdonságot kulcsnak nevezzük. Egy egyedet többféleképpen jellemezhetünk és kezelhetünk, ezért egy egyednek több kulcsa is lehet, melyeket kategóriákba sorolhatunk. Ezt kulcs-típusnak nevezzük. A továbbiakban a kulcs tehát gyűjtőfogalom, a kulcs tehát csak típusnevével együtt értelmezhető! Sütő Gergely

Azonosító (egyedi, elsődleges [primary]) Kapcsoló (idegen [foreign]) Kulcs-típusok Azonosító (egyedi, elsődleges [primary]) Kapcsoló (idegen [foreign]) Rendezési Csoportosító Szelekciós (szűrő) Sütő Gergely

Funkcionális függés Ha egy vizsgált da tartomány bármely értékéhez a df tartomány csak egy értéke rendelhető hozzá (másképpen ta meghatározza tf-et): df  da da df ? Kiss Pál Sütő Gergely

Kölcsönös függés Ha da meghatározza dj-t és dj is egyértelműen meghatározza da-t (azaz a ta tartomány és a tj tartomány értékei kölcsönösen összerendelhetők): da dj da dj Sütő Gergely

Egyedi, nem lehet azonos! Fordított függés Ha da nem határozza meg a dr-t de dr meghatározza da-t (azaz tr tartomány bármely értékéhez rendelhető hozzá ta csak egy értéke): dr  da da dr Egyedi, nem lehet azonos! Sütő Gergely

Funkcionális függetlenség Ha da nem határozza meg dn tartományt (ta értékeihez nem rendelhető a tn tartomány csak egy értéke) és dn sem határozza meg da-t: dn da da dn AN Sütő Gergely

A reláció belső függései Jelöljük ki az azonosítót (amely a reláció egy vagy több tartományát meghatározza) DOL< tsz,szig,dT,jogsi,dn,nem,len,bér,cím,szek,szen,gT,gn,nk,nm,nd>  Az áttekinthetőség kedvéért némileg szűkítsük a relációt: DOL< tsz, szig, jogsi, dn, szek, szen, gT, gn, nk, nm, nd> Vizsgáljuk meg a relációt konkrét adatokkal! Sütő Gergely

Határozatlan reláció Az, hogy egyes tartományok értékeiből egy sorhoz többet kell rendelni, emiatt a reláció nem képezhető le két dimenziós táblázattá! Mi okoz problémát? Sütő Gergely

Hogyan oldható fel a probléma?! Határozatlan reláció Ha egy reláció nem minden tartománya függ funkcionálisan vagy kölcsönösen az azonosítótól, akkor a reláció határozatlan, és 0-ik normál formában van (0NF) Hogyan oldható fel a probléma?! Sütő Gergely

Egy lehetséges megoldás A relációban ismétlődő értéket tartalmazó tartományok sokszorozása a várható ismétlődések számának megfelelően. Például ha öt gyermek adatait szeretnénk tárolni, akkor gT és gn helyett: gT1, gT2, gT3, gT4, gT5 és gn1, gn2, ... gn5 Probléma Mi van, ha valakinek még több gyermeke van? Meddig sokszorozzuk a reláció tartományait? Sütő Gergely

A megoldás képe táblázatban Sütő Gergely

"R" fokszámának növelése INFORMÁCIÓVESZTÉS lép fel! (Ugyanez a probléma érvényes a nyelvtudásnál is!) Redundancia: Ha a dolgozók többségének kettő esetleg kevesebb gyermeke van  feleslegesen foglalt tárolóhely! Ez a „megoldás” nem oldja fel a problémát csak újakat vet fel! Sütő Gergely

Másik lehetséges megoldás A reláció sorainak sokszorozása a várható ismétlődések számának megfelelően. 1. A sorokban így az „azonosító” tartomány és az azonosítótól függő tartományok értékei ismétlődnek! 2. Így az azonosítónak kiválasztott tartomány sem lesz azonosító, új, összetett azonosítót kell kijelölni Sütő Gergely

Hogyan oldható fel a probléma?! Adatok ismétlése a táblázatban Mi okoz problémát? A törzs-szám nem azonosítja a sort! Hogyan oldható fel a probléma?! Hiba: REDUNDANCIA! Új, összetett azonosító: tsz+gT+nk Sütő Gergely

Harmadik lehetséges megoldás A járható út a reláció szétbontása: normalizálás A relációból kiemeljük az azonosítót és a tőle függő tartományokat új relációba. A többi tartomány az „azonosítóval” új relációt alkot. Ennek a relációnak - mivel a régi azonosító nem határoz meg egyetlen tartományt sem - új (általában összetett) azonosítót kell kijelölni! Sütő Gergely

A reláció néhány művelete Kivetítés (projection): a relációból egy (általában azonosító) tartomány és az ettől függő tartományok kiemelése egy új relációba. R<da,df1,…dfi,dj,…dn>  Rp<da,df1,…dfi> marad: R<da,dj,…dn> Összekapcsolás (join): két reláció egyesítése a közös tartomány értékei alapján R1<dk,d11,…d1i>; és R2<dk,d21,…d2k>  Rj<dk, d11,…d1i;d21,…d2k> és Rjf = R1f + R2f -1 Kiválasztás (selection): egy reláció sorainak kiemelése megadott ismérvek alapján. Rk  R ; Rkf = Rf ahol Rf: R fokszáma Sütő Gergely

A műveletek szemléltetése Kivetítés (projection): Sütő Gergely

A műveletek szemléltetése Összekapcsolás (join): Sütő Gergely

A műveletek szemléltetése Kiválasztás (selection): Sütő Gergely

III. ELŐADÁS

Normalizálás ? Emeljük ki az azonosítótól függő tartományokat egy tsz szig jogsi dn szek szen gT gn nk nm nd  ? Kiindulásnak nem rossz, de a redundanciát meg kell szüntetni! A könnyebb kezelhetőség érdekében írjuk át az eredeti relációt egy oszlopba! Emeljük ki az azonosítótól függő tartományokat egy másik relációba! Sütő Gergely

Kivetítés (projection) tsz szig jogsi dn szek szen gT gn nk nm nd R1 tsz szig jogsi dn szek szen R3 tsz gT gn R2 tsz gT gn nk nm nd  R4 tsz nk nm nd Sütő Gergely

Kivetítés a táblázatban R0 R2 R1 Sütő Gergely

Redundancia, inkonzisztencia Sütő Gergely

Kivetítés a táblázatban R2 R3 R4 Sütő Gergely

Határozott reláció Ha egy reláció minden tartománya függ* az azonosítótól**, akkor a reláció határozott, és legalább első normál formában van * funkcionálisan vagy kölcsönösen ** a reláció egy tartománya (egyszerű azonosító) vagy több tartomány (összetett azonosító), amely rendelkezik az azonosító kritériumaival Sütő Gergely

Részleges függés 1NF R5 nk nm R4 tsz nk nm nd    R6 tsz nk nd   Részleges függés van egy relációban, ha határozott, minden tartománya függ egy összetett azonosítótól, de van az azonosítónak olyan része, amely a reláció egy vagy több tartományát meghatározza. A reláció 1. Normál Formában van! Sütő Gergely

Kivetítés a táblázatban R4 R5 R6 Inkonzisztencia Sütő Gergely

Tranzitív függés R8 tsz szig jogsi dn szek 2NF  R1 tsz szig jogsi dn szek szen  R7 szek szen  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! Sütő Gergely

Kivetítés a táblázatban R1 R8 R7 relationship Sütő Gergely

"Jól meghatározott" reláció Jól meghatározott a reláció, ha minden tartománya csak az azonosítótól függ! Ebben az esetben a reláció 3. Normál Formában van! 3NF R8  tsz szig jogsi dn szek Sütő Gergely

Logikai redundancia Logikailag redundáns az a tartomány, amely két vagy több relációt jellemez. Gyenge logikai redundancia: ha a logikailag redundáns tartomány legalább az egyik relációban azonosító! R1 tsz szig jogsi dn szek szen  R7 szek szen  Az erős logikai redundancia magában hordozza az inkonzisztencia veszélyét! Erős logikai redundancia: ha a logikailag redundáns tartomány egyik relációban sem azonosító! Sütő Gergely

Kapcsoló tartomány A gyenge logikai redundancia a kapcsolat hordozója. Ezért a logikailag gyengén redundáns tartományt kapcsoló tartománynak, (kapcsoló tulajdonság), az adatbázisban kapcsoló mezőnek nevezzük R8  tsz szig jogsi dn szek R7  szek szen Sütő Gergely

Kapcsolati fok A kapcsolati fok tehát a következő lehet: A relációk között a kapcsolat a relációk sorainak összerendelését jelenti. 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. A kapcsolati fok tehát a következő lehet: egy az egyhez (1:1) egy a többhöz (1:n) több a többhöz (m:n) Sütő Gergely

Elemezzük tovább az R8 relációt! 1:1 fokú kapcsolat Elemezzük tovább az R8 relációt! R9 jogsi tsz R8 tsz jogsi szig dn szek R10 tsz szig dn szek R9 jogsi tsz R10 tsz szig dn szek 1 : 1 Sütő Gergely

1:1 fok a táblában Sütő Gergely

1:n fokú kapcsolat 1 : n member owner tsz szig jogsi dn szek R7 szek szen 1 : n member owner Ahol a kapcsoló azonosító, ott bármely értéknek csak egy előfordulása lehet tehát az a reláció owner, ahol nem azonosító, leíró ott a kapcsoló bármely értéke többször is előfordulhat, tehát member. Sütő Gergely

m:n fokú kapcsolat R8 tsz szig dn szek Nincs közös tartomány, a kapcsolat csak kapcsoló reláción keresztül valósítható meg! R5 nk nm m : n Rk nk tsz 3NF-ben nem fordulhat elő, csak a koncepcionális modell szintjén létezhet! Sütő Gergely

Adjunk nevet a relációknak! Adatszerkezeti ábra Adjunk nevet a relációknak! JOGOS SZERVEZET R9 jogsi tsz R7 szek szen DOLGOZÓ NYELV R10 tsz szig dn szek R5 nk nm GYERMEK NYELVTUDÁS R3 gT tsz gn R6 nk tsz nd Sütő Gergely

Megfeleltetés a fogalmak között valós rendszer ETK modell ralációs modell adatbázis egyedtípus reláció tábla (table) egyed- előfordulás tuple (sor) rekord (row) Név tulajdonság típus domain (tartomány) mező (column, field) Tőrt Elek tulajdonság előfordulás elem (mező)érték kapcsolat- típus relationship kapcsolat leírás kapcsolat- előfordulás sorok halmaza kapcsolt rekordok Sütő Gergely

Két egyed előfordulásainak kapcsolhatósága A kapcsolat jellege (opcionalitás) Két egyed előfordulásainak kapcsolhatósága KÖTELEZŐ FÉLIG KÖTELEZŐ OPCIONÁLIS Sütő Gergely

többszörös hierarchia Az adatmodellek szerkezeti elemei (1) SZERVEZET DOLGOZÓ owner owner owner DOLGOZÓ member GYERMEK member NYELVTUDÁS member hierarchia többszörös hierarchia Sütő Gergely

többszörös tagság (háló) Az adatmodellek szerkezeti elemei (2) SZERVEZET DOLGOZÓ NYELV owner owner owner DOLGOZÓ member member NYELVTUDÁS member owner GYERMEK member többszörös tagság (háló) többszitű hierarchia Sütő Gergely

Az adatmodellek szerkezeti elemei (3) DOLGOZÓ DOLGOZÓ owner owner owner KÉPESSÉGEK ISMERET TÁRGYALÓKÉPES member NYELVTUDÁS member NYELVTUDÁS member SZAKTUDÁS többszörös kapcsolat közös kapcsolat Sütő Gergely

önmagába mutató kapcsolat Az adatmodellek szerkezeti elemei (4) DOLGOZÓ DOLGOZÓ owner BEOSZTOTT FŐNÖK member FŐNÖKI VISZONY önmagába mutató kapcsolat megvalósítás Sütő Gergely

IV. előadás IV. ELŐADÁS

A Struktúra Generátor Mátrix (SGM®) mint a modellezés eszköze AZ ADATMODELL TERVEZÉSE A Struktúra Generátor Mátrix (SGM®) mint a modellezés eszköze Sütő Gergely

Az SGM szerkezete Sütő Gergely

Az SGM szerkezete Sütő Gergely

Az SGM jelölései Wingdings jelkészlet  azonosító tulajdonság  részazonosító  funkcionális függés () kölcsönös függés (alternatív azonosító)  default érték  kritérium  gyengén jellemző tulajdonság  almátrix hivatkozás  mnemonic Sütő Gergely

Symbol készlet (kézi kitöltés) Az SGM jelölései Symbol készlet (kézi kitöltés)  azonosító tulajdonság  részazonosító  funkcionális függés () kölcsönös függés (alternatív azonosító)  default érték  kritérium  gyengén jellemző tulajdonság  almátrix hivatkozás  mnemonic   Sütő Gergely

Egy oszlopban nem állhat azonosító (csillag) Az SGM szabályai sor: tulajdonságtípus oszlop: egyedtípus cella: belső függés Egy oszlopba mindig egy és csakis egy azonosító kerül. Az azonosító lehet: egyszerű: egy csillag  összetett: két vagy több „tele” kör  Egy oszlopban nem állhat azonosító (csillag) és részazonosító (kör) egyszerre! Sütő Gergely

Az SGM szabályai minden oszlop egy 3NF relációt definiál az oszlopban csak az azonosítótól függő tulajdonság sorába lehet bejegyzést tenni abban a sorban (vagy összefüggő sorokban) ahol több jelölés van, kell lenni egy azonosítónak (gyenge logikai redundancia) minden sorban legalább egy bejegyzésnek kell állni, különben az adott tulajdonság nem jellemző a modellezendő rendszer egyetlen egyedére sem egy oszlopban csak egy  jel állhat és ekkor nem lehet  jel Sütő Gergely

Az SGM szabályai ha egy oszlop nem tartalmaz  jelet, akkor legalább két  jelet kell, hogy tartalmazzon egy sorban nem állhatnak csak  jelek (erős redundancia) az egy sorban álló jelek a relációk kapcso- latát adják meg (relationship) közvetlen kapcsolat csak az azonosítóval (egy sorban egy  vagy a több sorban álló  jelek) jelzett oszlop illetve az ennek megfelelő egyed és a többi, jelzett oszlop között áll fenn. Sütő Gergely

Az SGM szabályai azok a relációk állnak közvetlen kapcsolat- ban, ahol egy sorban egy azonosító és egy nem azonosító jel áll. Az összetett azonosí- tó sorait itt egy sorként kell kezelni! nem lehet olyan oszlop, amelynek egyetlen jelzett sora sem tartalmaz az adott oszlopon kívül bejegyzést (vagyis az adott egyed nem kapcsolódik egyetlen más egyedhez sem, tehát az adott egyed “nem része” az adat- modellnek) Sütő Gergely

Hálós kapcsolat az SGM-ben ha egy Rc reláció közvetlenül kapcsolódik egy Ra relációhoz (Ra =< Rc) és Rc közvet- lenül kapcsolódik Rb-hez is (Rb =< Rc), akkor Ra és Rb közvetett, hálós kapcsolat- ban állnak egymással: Ra >=< Rb Sütő Gergely

Hálós kapcsolat az SGM-ben Ra<da1,…> Rb<db1,…> Rc<da1,db1, …> Sütő Gergely

Tranzitív kapcsolat az SGM-ben ha egy Rb reláció közvetlenül kapcsolódik egy Ra relációhoz (Ra =< Rb) és Rc közvet- lenül kapcsolódik Rb-hez (Rb =< Rc), akkor Ra és Rc közvetett, tranzitív kapcso- latban állnak egymással: Ra =<< Rc tranzitív kapcsolat esetén, ha Rc azonosítója összetett és Ra azonosítója része Rc azono- sítójának, Ra és Rc közvetlen kapcsolatba hozható! Sütő Gergely

Rc<da1,db1,dc1…> Tranzitív kapcsolat az SGM-ben Ra<da1,…> Rb<da1,db1, …> Rc<da1,db1,dc1…> Sütő Gergely

Az induló SGM Jelölések: azonosító  részazonosító  funkcionális függés  kölcsönös függés  kritérium  gyengén jellemző  Sütő Gergely

Megoldás      Jelölések:                FELTÉTELES FÜGGÉS    Jelölések: azonosító  részazonosító  funkcionális függés  kölcsönös függés  kritérium  gyengén jellemző                 ERŐS LOGIKAI REDUNDANCIA!   Sütő Gergely

Bolthálózat áruforgalma Mintapélda Bolthálózat áruforgalma Egy bolthálózatban az egyes boltok részlegesen önálló egységeket képeznek, de közös adatrendszerrel dolgoznak. Nyilvántartják rendszeres vevőiket, akik rendeléseket adnak fel a boltokban kapható árucikkekre. Az egyes árucikkek készletét boltonként tartjuk nyilván. A cikkek nyilvántartása központi, közös nyilvántartási árral, amely súlyozott átlagár. (A feladatban nem foglalkozunk ennek számításával!) Értékesítéskor egyedi eladási árat alkalmaznak. A két ár különbözetét tekintjük árrésnek. Sütő Gergely

Bolthálózat áruforgalma II. A rendeléseket megrendelőlapon adják fel. Minden megrendelőlap egyedi rendelésszámot kap a rendszerben. Egy megrendelőlapon csak egy vevő rendelhet, de egyszerre több árucikket. Az egyes megrendelt árucikk teljes vagy részleges átvételekor jelezzük a teljesített mennyiséget! Amikor a vevő az árut megvásárolja, számlát kap. A számla a vásárlás, mint gazdasági esemény adatait rögzíti. A rendszeren belül e gazdasági esemény egyértelmű és egyedi azonosítására a számlaszám szolgál. Természetesen egy számla többtételes, több árucikket tartalmazhat! Sütő Gergely

A szokásos SZÁMLA-szerkezet FEJ/(LÁB) SZÁMLA TÉTEL Sütő Gergely

A minta modell tartományai Sütő Gergely

Az induló SGM Sütő Gergely

Megoldás Jelölések:       azonosító  részazonosító  funkcionális függés  kölcsönös függés  alapértelmezés  gyengén jellemző  almátrix                      Sütő Gergely

Adjunk nevet a relációknak 1. BOLT bolt 2. ARU áru 3. VEVO vevő 4. REFEJ rendelés fej 5. RETET rendelés tétel 6. KESZLET bolt árukészlete 7. SZLAFEJ számla fej 8. SZLETET számla tétel Sütő Gergely

A "forgalom" modell táblái BOLT * BOK BOCI ÁRU * AKO ANE MEGYS AFAK NYAR VEVŐ * VEKO VENE VECI REFEJ * RESZA BOK VEKO REDAT RETET  RESZA  AKO REME TEME KESZLET  BOK  AKO KLT UVAD SZLAFEJ * SZLASZ BOK VEKO SZAKE SZLATET  SZLASZ  TESZ AKO VAME ELAR Sütő Gergely

A megrendelés logikai szerkezete RESZA (rendelés-szám) REFEJ BOK (eladó) VEKO (vevő) REDAT (rendelés dátuma) AKO, REME, TEME RETET ismétlődés Sütő Gergely

A SZÁMLA logikai szerkezete SZLASZ (számlaszám) SZLAFEJ BOK (eladó) VEKO (vevő) SZAKE (számla kelte) TESZ,AKO, VAME, ELAR SZLATET ismétlődés Sütő Gergely

Adatszerkezeti ábra VEVŐ BOLT REFEJ ARU KESZLET RETET SZLATET SZLAFEJ Sütő Gergely

FORGALOM modell 1. BOLT 2. ARU 3. VEVO 4. REFEJ 5. RETET 6. KESZLET            1. BOLT 2. ARU 3. VEVO 4. REFEJ 5. RETET 6. KESZLET 7. SZLAFEJ 8. SZLETET                     Sütő Gergely

A megbontott mátrix    a  a                   Sütő Gergely

V. ELŐADÁS

SQL Structured Query Language A relációs adatbázis kezelés eszperantója Sütő Gergely

Az SQL Fejlődésének Főbb Állomásai 1970. E. F. Codd definiálja a relációs adatmodellt (és leírja a később SQL-nek nevezett nyelv fő kritériumait) 1974. Sequel nyelv leírása (IBM System/R project) Relational Technology Inc.: INGRES fejlesztés 1978. A System/R felhasználói tesztje 1979. Oracle 1981. Ingres, IBM SQL/DS

ACCESS SQL: 1982. IBM DB2 1986. ANSI SQL szabvány, Sybase 1987. ISO SQL szabvány 1988. SQL Server DB2-höz SQL szolgáltatások (pl.: dBASE IV) SQL alapú adatbázis kezelők MS SQL Server ACCESS SQL: „ANSI-89 Level 1” szabványnak felel meg

Az SQL jellemzői Szabványos, transzportibilis (átvihető rendszerek, gépek között) Nem algoritmikus, halmaz orientált Önálló nyelv, de használható más programnyelvek beágyazott nyelveként is Hierarchikus, de nem rekurzív

Az SQL egységei adatbázis tábla (table, reláció) sor (row) oszlop (column) elemi adat

Általános adattípusok SMALLINT rövid egész szám (2 byte) -32 767 < x < 32 768 INTEGER egész szám (4 byte) -2 147 483 647 < x < 2 147 483 648 DECIMAL(e,t) fixpontos szám FLOAT lebegőpontos szám CHAR(n) karakterlánc (szöveges) n 255 byte DATE dátum LOGICAL logikai (igen/nem) MONEY pénznem SERIAL sorszám VARCHAR(n) hosszú szöveg n>255

Metanyelv alapelemek NAGYBETŰ kulcsszó dőlt kisbetű változó kisbetű érték aláhúzás alapértelmezés (default) { } opcionális elem | vagylagos elemek … „és így tovább” (folytatás)  szóköz _ összetartozó elem

Parancs szintaxis PARANCS_KULCSSZÓ  paraméterek; Az SQL paraméterei rendszerint kulcsszavasak! Paraméterek  KULCSSZÓ  p1,p2,…pn p1,p2,...pn  a paraméter lista elemei (értékek) A továbbiakban: SQL-ben a parancs komponense a paraméter egésze a paraméter az értékeket jelenti!

A parancsok típusai Adatbázis szerkezet kezelése Adat karbantartás Lekérdezés Adatvédelem

Adatbázis szerkezet kezelése I. adatbázis létrehozása: CREATE DATABASE adatbázisnév; adatbázis megnyitása: {START} DATABASE adatbázisnév; adatbázis lezárása: CLOSE DATABASE; adatbázis törlése: DROP DATABASE adatbázisnév;

Adatbázis szerkezet kezelése II. (táblák) Új tábla létrehozása: CREATE TABLE táblanév (oszlop1{, oszlop2, …}); Új oszlop hozzáadása: ALTER TABLE táblanév ADD (oszlop1{, oszlop2, …}); Tábla törlése: DROP TABLE táblanév; oszlopi  oszlopnéviadattípusi{NOT NULL}

Adatbázis szerkezet kezelése III. (táblák) Virtuális (nézet) tábla létrehozása Virtuális tábla törlése Szinonima (alternatív név) létrehozása Szinonima törlése Index (mutatótábla) létrehozása Index törlése

Adat karbantartás (sorokra vonatkozó műveletek!) Hozzáadás: INSERT INTO táblanév {(oszloplista)} VALUES(konstans|NULL); Módosítás: UPDATE táblanév SET oszlopnév=kifejezés|NULL {WHERE feltétel}; Törlés: DELETE FROM táblanév {WHERE feltétel};

Lekérdezés (a SELECT parancs) Kiválasztás egy vagy több táblából a parancsban definiált szempontok szerint

Lekérdezés szintaxis SELECT {ALL|DISTINCTROW} *| kifejezés_lista FROM tábla_lista {WHERE feltétel} {GROUP BY oszlop_lista} {HAVING csoport_feltétel} {ORDER BY kulcs_kifejezés};

Lekérdezés paraméterek kifejezés_lista oszlopkifejezés1{,oszlopkifejezés2,…} tábla_lista  táblanév1{,táblanév2,...} feltétel  összehasonlítás{log_operátorhasonlítás…} oszlop_lista csop_kulcsmező1{, csop_kulcsmező1…} csoport_feltétel szűrés a csoportban kulcs_kifejezés oszlopnév1|sorszám{ASC|DESC}

Lekérdezés további komponensek Táblák összekapcsolása (JOIN) Szoros kapcsolat: INNER JOIN…ON „Laza”kapcsolat LEFT|RIGHT JOIN Egyesítés (UNION) Al(sub)select (SELECT)

Aggregáló függvények gyűjtés (összegzés): SUM átlagolás: AVG megszámlálás: COUNT legkisebb, legnagyobb érték: MIN, MAX variancia mintára, teljes sokaságra: VAR, VARP szórás mintára, teljes sokaságra: STDEV, STDEVP

Összehasonlító operátorok =; <; >; <=; >=; <> BETWEEN IN LIKE EXISTS

Adatvédelem Hozzáférési jog átadása: GRANT jogok listája {ON táblanév} TO PUBLIC|felhasználó_lista {WITH GRANT OPTION}; Adatbázis jogok: CONNECT RESOURCE DBA Hozzáférési jog visszavonása: REVOKE jogok listája {ON táblanév} TO PUBLIC|felhasználó_lista;

Tranzakció kezdete: BEGIN WORK; Tranzakció érvényesítése: COMMIT WORK; Tranzakció érvénytelenítése: ROLLBACK WORK; Adatbázis helyreállítása: ROLLFORWARD DATABASE;

VI. ELŐADÁS

MINTAFELADATOK SELECT * FROM ARU; SELECT ANE, AKO, NYAR FROM ARU; 1. Listázzuk ki az ÁRU táblát SELECT * FROM ARU; 2. Listázzuk ki az ÁRU táblából az áru nevét, kódját és nyilvántartási árát SELECT ANE, AKO, NYAR FROM ARU; 3. Az előző feladatot egészítsük ki azzal, hogy csak az 1000Ft-nál nagyobb árú cikkeket írjuk ki SELECT ANE,AKO,NYAR FROM ARU WHERE NYAR>1000; 0-3

MINTAFELADATOK 3. Folytassuk az előző feladatot azzal, hogy a listát áru név sorrendben jelenítsük meg SELECT ANE, AKO, AFAK, NYAR FROM ARU WHERE NYAR>1000 ORDER BY ANE; 4. A következő példában listázzuk ki a készletet úgy, hogy az áru kódon kívül a megnevezés, a bolt kódja, az áru ÁFA kulcsa és ára is jelenjen meg! Ehhez össze kell kapcsolni az ARU és KESZLET táblákat! 0-3

Kapcsolat az SQL-ben ÁRU KÉSZLET 1. OWNER tábla 2. kapcsolva a MEMBER táblához KÉSZLET 3. azon sorokban ahol a két tábla árukódjai megegyeznek INNER JOIN KESZLET ARU ON ARU.AKO = KESZLET.AKO 9

MINTAFELADATOK A 4. mintapélda teljes SQL parancsa tehát: SELECT ARU.AKO,ANE,BOK,AFAK,NYAR,KLT FROM ARU INNER JOIN KESZLET ON ARU.AKO = KESZLET.AKO; 4-5

MINTAFELADATOK 5. Egészítsük ki az előző feladatot azzal, hogy írjuk ki a készlet nyilvántartási áras értékét is, a fejlécben „készlet érték” szöveggel SELECT ARU.AKO, ANE, BOK, AFAK, NYAR, KLT, nyar*klt AS [készlet érték] FROM ARU INNER JOIN KESZLET ON ARU.AKO = KESZLET.AKO; A „készlet érték” szövegben szóköz van, ami az SQL-ben határolójel, ezért a szöveget szögletes zárójelek közé kell tenni! 4-5

MINTAFELADATOK 6. Az előző feladatot bővítsük azzal, hogy a bolt kódja helyett a bolt címét jelenítsük meg! A feladat megoldásához az előző szerkezethez hozzá kell kapcsolni a bolt táblát úgy, hogy a KESZLET tábla többszörös tag legyen, vagyis képezzük le a hálós szerkezetet SQL-ben! 9

Hálós kapcsolat az SQL-ben BOLT ÁRU KÉSZLET INNER JOIN KESZLET (ARU BOLT INNER JOIN ON ARU.AKO = KESZLET.AKO) ON BOLT.BOK = KESZLET.BOK 9

MINTAFELADATOK SELECT ARU.AKO, ANE AS [áru neve], A teljes 6. feladat megoldása SQL-ben: SELECT ARU.AKO, ANE AS [áru neve], BOCI AS [bolt címe], nyar*klt AS [klt_érték] FROM BOLT INNER JOIN (ARU INNER JOIN KESZLET ON ARU.AKO = KESZLET.AKO) ON BOLT.BOK = KESZLET.BOK; 9

MINTAFELADATOK 7. Összegezzük a készlet értékeket áru cikkenként SELECT ARU.AKO, First(ANE) AS megnevezés, Sum(nyar*klt) AS klt_érték FROM ARU INNER JOIN KESZLET ON ARU.AKO = KESZLET.AKO GROUP BY ARU.AKO; 6

MINTAFELADATOK 8. Az előző feladatból csak a 20000Ft összértéknél nagyobb készleteket jelenítsük meg! A feladatot az ACCESS QBE rácsával (tervező nézet) oldjuk meg és vizsgáljuk meg a létrejött SQL parancsot! SELECT ARU.AKO, First(ARU.ANE) AS [First:ANE], Sum([nyar]*[klt]) AS klt_érték FROM ARU INNER JOIN KESZLET ON ARU.AKO = KESZLET.AKO GROUP BY ARU.AKO HAVING (((Sum([nyar]*[klt]))>20000)); 7

MINTAFELADATOK A 8. feladat SQL parancsa az utasítás generátor által feleslegesen elhelyezett jelek nélkül és javított fejléccel: SELECT ARU.AKO, First(ANE) AS megnevezés, Sum(nyar*klt) AS klt_érték FROM ARU INNER JOIN KESZLET ON ARU.AKO = KESZLET.AKO GROUP BY ARU.AKO HAVING Sum(nyar*klt)>20000; 7

MINTAFELADATOK 9. Az előző feladatot bővítsük azzal, hogy a bolt kódja helyett a bolt címét jelenítsük meg, és tegyük kultúráltabbá a fejlécet SELECT ARU.AKO, First(ANE) AS [áru neve], First(BOCI) AS [bolt címe], Max(nyar*klt) AS [max_klt] FROM BOLT INNER JOIN (ARU INNER JOIN KESZLET ON ARU.AKO = KESZLET.AKO) ON BOLT.BOK = KESZLET.BOK GROUP BY ARU.AKO HAVING Max(nyar*klt)>20000; 9

VII. előadás VII. ELŐADÁS

Szerkezet, adatkarbantartás, megjelenítés. ADATBÁZISKEZELŐ RENDSZER Szerkezet, adatkarbantartás, megjelenítés. A relációk életre kelnek Sütő Gergely

Címsor (adatbázis neve) Az adatbázis kezelők alapfunkciói Főmenü Adatbázis eszközsáv Címsor (adatbázis neve) Funkció lapok Funkció lapok Funkció lapok Funkció lapok Adatbázis ablak (funkció ablak) Office '97 Sütő Gergely

Címsor (adatbázis neve) Az adatbázis kezelők alapfunkciói Főmenü Adatbázis eszközsáv Címsor (adatbázis neve) Funkció lapok Funkció lapok Funkció lapok Funkció lapok Adatbázis ablak (funkció ablak) Office 2000 Sütő Gergely

Címsor (adatbázis neve) Az adatbázis kezelők alapfunkciói Főmenü Adatbázis eszközsáv Címsor (adatbázis neve) Funkciók (objektumok) Funkció lapok Funkció lapok Funkció lapok Adatbázis ablak XP Sütő Gergely

Tábla funkciók I. Office '97 Műveletek Létező táblák megnyitás (adat karbantartás) tervezés (tábla szerkezet módosítás) új (tábla szerkezet kialakítás) Létező táblák Office '97 Sütő Gergely

Tábla funkciók I. Office 2000 Műveletek Létező táblák megnyitás (adat karbantartás) tervezés (tábla szerkezet módosítás) új (tábla szerkezet kialakítás) Létező táblák Office 2000 Sütő Gergely

Tábla funkciók I. XP Műveletek Létező táblák megnyitás (adat karbantartás) tervezés (tábla szerkezet módosítás) új (tábla szerkezet kialakítás) Létező táblák XP Sütő Gergely

Tábla funkciók II. Office '97 Nézet váltás Adatlap nézet (adat karbantartás) Office '97 Sütő Gergely

Tábla funkciók II. Office 2000 Nézet váltás Adatlap nézet (adat karbantartás) Office 2000 Sütő Gergely

Tábla funkciók II. XP Nézet váltás Adatlap nézet (adat karbantartás) Sütő Gergely

(szerkezet módosítás) Tábla funkciók III. Tervező nézet (szerkezet módosítás) Mezőtulajdonságok beállítása Office '97 Sütő Gergely

(szerkezet módosítás) Tábla funkciók III. Tervező nézet (szerkezet módosítás) Mezőtulajdonságok beállítása Office 2000 Sütő Gergely

(szerkezet módosítás) Tábla funkciók III. Tervező nézet (szerkezet módosítás) Mezőtulajdonságok beállítása XP Sütő Gergely