Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

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.

Hasonló előadás


Az előadások a következő témára: "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."— Előadás másolata:

1

2 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

3

4

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

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

7 Szabó XXIII József őrmester Ft üzletkötő Szép Ilona Ft kereskedelmi igazgató Tört Elek Ft titkárnő Bak Anita Ft

8 kg festék I.oszt 2200Ft m3m3 I.oszt sóder 1650Ft db 1650Ft mikro-processzor Pentium II kg paprika I.oszt 1650Ft kg I.oszt ementáli sajt 3200Ft készlet I.oszt gyújtógyertya 1650Ft dbM8 fényes 56Ft csavar db Alkáli elem góliát 56Ft db 217Ft földeletlen Konnektor dugó db kijelzős fali kapcsoló 678Ft

9 2-ME00123/99 minőségellenőrzés nov út felbontás jan db. 456 m BSZ belső szállítás jún tonna-km /99 kertépítés 1999.máj m FSZLA szoftver fejlesztés jún ember-óra FE/ szobafestés dec m 2 99/421tanítás szept óra

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

11 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

12 Mivel írhatjuk le egyértelműen a munka eszközeit? TÁRGYI_ESZKÖZ  eszköz_kód,megnevezés, szervezet_kód,üzembe_helyezés_időpontja,...  értéke, Sütő Gergely

13 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

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

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

16 ADAT  forma: jelsorozat  tartalom: a jelsorozat jelentése, az az ismeret, amit a jelsorozat hordoz  szerkezet: adatok közötti összefüggés Ha a jellemző és a jelsorozat között egyértelmű, és kölcsönös megfeleltetés van kód ról beszélünk. 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. 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.

17 KÓDOLÁS Ki Ő? DEKÓDOLÁS

18 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.

19 A kódolás két halmaz összerendelése, vagyis felfoghatjuk úgy, mint egy függvény t, 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. A kód a valós világ, a rendszerek objektumainak rövid, tömör, egyértelmű jellemzésére szolgáló jelsorozat.

20 forma szerkezet funkció tartalom Sütő Gergely

21 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 {,,  egyéb kódok (pl.: vonal, grafikus) Sütő Gergely

22 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

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

24 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

25 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.) 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

26 Szabó XXIII József őrmester Ft üzletkötő Szép Ilona Ft kereskedelmi igazgató Tört Elek Ft titkárnő Bak Anita Ft Egyed előfordulás Egyed típus DOLGOZÓ

27 Szabó XXIII József őrmester Ft üzletkötő Szép Ilona Ft kereskedelmi igazgató Ft titkárnő Bak Anita Ft Tört Elek Tulajdonság elő- fordulás (érték) Tulajdonság típus DOLGOZÓ NEVE

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

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

30 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). 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).

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

32 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. 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.

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

34

35 Sütő Gergely

36 Descartes szorzat fehér ezüst türkiz piros éjkék fekete 45 LE 60 LE92 LE 125 LE 160 LE d1d1 d2d2 d3d3 RELÁCIÓ rádió riasztó d 1 : kategória (teljesítmény) d 2 : szín d 3 : ajándék felszerelés Sütő Gergely

37 A reláció matematikai leírása: Rdn> 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

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

39 A konkrét reláció táblázatos formában írható le. A továbbiakban: RELÁCIÓ = TÁBLÁZAT A reláció foka (n) A reláció mérete (k) Á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 Sütő Gergely

40 név egység_szám szervezet_kód név DOLGOZÓ Szervezeti_egység_kód ? Dolgozó_névSzervezet_név d  d i  d k ;d  d i  d k d  d i = d k ; homonim név: különböző fogalmak neve azonos  minősítés szinonim név: ugyanannak a tartománynak fogalomnak több neve is van  egységesítés Sütő Gergely

41 DOLGOZÓ Rövidítsünk! DOL A tulajdonság ot (ETK modell) és a tartomány t (domain  relációs modell) a továbbiakban tekintsük szinonim fogalomnak! Sütő Gergely

42 DOLGOZÓ 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

43 ? 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

44 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

45 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 Az azonosító ezek alapján Sütő Gergely

46 Az egyed jellemzésében és kezelésében kitüntetett szerepet játszó tulajdonságot kulcs nak 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ípus nak 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

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

48 ? Ha egy vizsgált d a tartomány bármely értékéhez a d f tartomány csak egy értéke rendelhető hozzá (másképpen t a meghatározza t f -et): d f  d a Kiss Pál dada dfdf Sütő Gergely

49 Ha d a meghatározza d j -t és d j is egyértelműen meghatározza d a -t (azaz a t a tartomány és a t j tartomány értékei kölcsönösen összerendelhetők): d a  d j dada djdj Sütő Gergely

50 Ha d a nem határozza meg a d r -t de d r meghatározza d a - t (azaz t r tartomány bármely értékéhez rendelhető hozzá t a csak egy értéke): d r  d a Egyedi, nem lehet azonos! dada drdr Sütő Gergely

51 AN Ha d a nem határozza meg d n tartományt (t a értékeihez nem rendelhető a t n tartomány csak egy értéke) és d n sem határozza meg d a -t: d n  d a dada dndn Sütő Gergely

52 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: Jelöljük ki az azonosítót (amely a reláció egy vagy több tartományát meghatározza) 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

53 Mi okoz problémát? 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á! Sütő Gergely

54 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

55 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: gT 1, gT 2, gT 3, gT 4, gT 5 és gn 1, gn 2,... gn 5 Probléma Mi van, ha valakinek még több gyermeke van? Meddig sokszorozzuk a reláció tartományait? Sütő Gergely

56

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

58 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

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

60 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

61 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  R p marad: R Összekapcsolás (join): két reláció egyesítése a közös tartomány értékei alapján R 1 ;és R 2  R j és R j f = R 1 f + R 2 f -1 Kiválasztás (selection): egy reláció sorainak kiemelése megadott ismérvek alapján. R k  R ; R k f = R f ahol R f : R fokszáma Sütő Gergely

62 Kivetítés (projection): Sütő Gergely

63 Összekapcsolás (join): Sütő Gergely

64 Kiválasztás (selection): Sütő Gergely

65

66 Kiindulásnak nem rossz, de a redundanciát meg kell szüntetni! R0R0 tsz szig jogsi dn szek szen gT gn nk nm nd ? 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

67 R2R2 tsz gT gn nk nm nd R0R0  tsz szig jogsi dn szek szen gT gn nk nm nd R1R1  tsz szig jogsi dn szek szen R3R3 tsz gT gn  R4R4 tsz nk nm nd Sütő Gergely

68 R0R0 R1R1 R2R2

69 R1R1 Redundancia Inkonzisztencia Sütő Gergely

70 R3R3 R2R2 R4R4

71 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

72 R 4 tsz nk nm nd R 4 tsz nk nm nd R 5 nk nm R 6 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

73 R5R5 R4R4 R6R6 Inkonzisztencia Sütő Gergely

74 R 1 tsz szig jogsi dn szek szen R1R1 tsz szig jogsi dn szek szen  R8R8 tsz szig jogsi dn szek R7R7 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

75 R8R8 R1R1 R7R7 relationship Sütő Gergely

76 R 8  tsz szig jogsi dn szek R8R8  tsz szig jogsi dn szek 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! Sütő Gergely

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

78 R 8  tsz szig jogsi dn szek R8R8  tsz szig jogsi dn szek R 7  szek szen R7R7  szek szen 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 Sütő Gergely

79 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

80 R 8  tsz  jogsi szig dn szek R8R8  tsz  jogsi szig dn szek Elemezzük tovább az R 8 relációt! R 9  jogsi  tsz R9R9  jogsi  tsz R 10  tsz szig dn szek R 10  tsz szig dn szek R 10  tsz szig dn szek R 10  tsz szig dn szek R 9  jogsi  tsz R9R9  jogsi  tsz 11: Sütő Gergely

81

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

83 R 8  tsz szig dn szek R8R8  tsz szig dn szek R 5  nk nm R5R5  nk nm R k nk tsz Nincs közös tartomány, a kapcsolat csak kapcsoló reláción keresztül valósítható meg! nm: 3NF-ben nem fordulhat elő, csak a koncepcionális modell szintjén létezhet! Sütő Gergely

84 R 10  tsz szig dn szek R 10  tsz szig dn szek R 7  szek szen R7R7  szek szen Adjunk nevet a relációknak! R 5  nk nm R5R5  nk nm R 6 nk tsz nd R6R6 nk tsz nd R 3  gT tsz gn R3R3  gT tsz gn GYERMEK NYELV NYELVTUDÁS SZERVEZET DOLGOZÓ R 9  jogsi  tsz R9R9  jogsi  tsz JOGOS Sütő Gergely

85 egyedtípus reláció tábla (table) egyed- előfordulás tuple (sor) Tőrt Elek tulajdonság típus domain (tartomány) rekord (row) mező (column, field) Név tulajdonság előfordulás elem(mező)érték kapcsolat- típus kapcsolat- előfordulás relationship sorok halmaza kapcsolat leírás kapcsolt rekordok

86 Sütő Gergely KÖTELEZŐFÉLIG KÖTELEZŐOPCIONÁLIS Két egyed előfordulásainak kapcsolhatósága

87 Sütő Gergely SZERVEZET DOLGOZÓ GYERMEKNYELVTUDÁS DOLGOZÓ member owner member

88 Sütő Gergely SZERVEZET DOLGOZÓ NYELV NYELVTUDÁS GYERMEK member owner member owner member owner

89 Sütő Gergely NYELVTUDÁS DOLGOZÓ NYELVTUDÁS ISMERETTÁRGYALÓKÉPES SZAKTUDÁS KÉPESSÉGEK member owner

90 Sütő Gergely DOLGOZÓ FŐNÖKI VISZONY FŐNÖKBEOSZTOTT DOLGOZÓ member ownerowner

91 IV. előadás

92 Sütő Gergely

93

94

95  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 Wingdings jelkészlet Sütő Gergely

96  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  Symbol készlet (kézi kitöltés) Symbol készlet (kézi kitöltés)  Sütő Gergely

97 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

98 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

99 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

100 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 sor ké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

101 ha egy R c reláció közvetlenül kapcsolódik egy R a relációhoz ( R a = =< R b Sütő Gergely

102 R a R b R c Sütő Gergely

103 1.ha egy R b reláció közvetlenül kapcsolódik egy R a relációhoz ( R a =< R b ) és R c közvet- lenül kapcsolódik R b -hez ( R b =< R c ), akkor R a és R c közvetett, tranzitív kapcso- latban állnak egymással: R a =<< R c 2.tranzitív kapcsolat esetén, ha R c azonosítója összetett és R a azonosítója része R c azono- sítójának, R a és R c közvetlen kapcsolatba hozható! Sütő Gergely

104 R a R b R c Sütő Gergely

105 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ő 

106 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 ERŐS LOGIKAI REDUNDANCIA!    FELTÉTELES FÜGGÉS  

107 Egy bolthálózatban az egyes bolt ok 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ó áru cikkekre. Az egyes árucikkek készlet ét boltonként tartjuk nyilván. A cikkek nyilvántartása központi, közös nyilvántartási ár ral, amely súlyozott átlagár. (A feladatban nem foglalkozunk ennek számításával!) Értékesítéskor egyedi eladási ár at alkalmaznak. A két ár különbözetét tekintjük árrés nek. Sütő Gergely

108 A rendelés eket megrendelőlapon adják fel. Minden megrendelőlap egyedi rendelésszám ot 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

109 SZÁMLA FEJ/(LÁB) SZÁMLA TÉTEL

110 Sütő Gergely

111

112 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

113 1.BOLTbolt 2.ARUáru 3.VEVOvevő 4.REFEJrendelés fej 5.RETETrendelés tétel 6.KESZLETbolt árukészlete 7.SZLAFEJszámla fej 8.SZLETETszámla tétel Sütő Gergely

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

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

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

117 VEVŐ Sütő Gergely BOLT ARU RETET KESZLET SZLAFEJ REFEJ SZLATET

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

119            aa  aa            Sütő Gergely 

120

121 SQL S tructured Q uery L anguage A relációs adatbázis kezelés eszperantója

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

123  IBM DB2  ANSI SQL szabvány, Sybase  ISO SQL szabvány  SQL Server DB2-höz  SQL szolgáltatások (pl.: dBASE IV)  SQL alapú adatbázis kezelők  MS SQL Server  IBM DB2  ANSI SQL szabvány, Sybase  ISO SQL szabvány  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 ACCESS SQL: „ ANSI-89 Level 1” szabványnak felel meg

124 Az SQL jellemzői 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

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

126 Általános adattípusok SMALLINTrövid egész szám (2 byte) < x < INTEGERegész szám (4 byte) < x < DECIMAL(e,t)fixpontos szám FLOATlebegőpontos szám CHAR(n)karakterlánc (szöveges) n  255 byte DATEdátum LOGICALlogikai (igen/nem) MONEYpénznem SERIALsorszám VARCHAR(n)hosszú szöveg n>255

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

128 Parancs szintaxis PARANCS_KULCSSZÓ paraméterek; Az SQL paraméterei rendszerint kulcsszavasak! Paraméterek  KULCSSZÓ KULCSSZÓ  p 1,p 2,…p n p 1,p 2,...p n p 1,p 2,...p n a paraméter lista elemei (értékek) A továbbiakban: SQL-ben a parancs parancs komponens e komponens e a paraméter egésze a paraméter paraméter az értékeket jelenti !

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

130 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 ;

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

132 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

133 Adat karbantartás (sorokra vonatkozó műveletek!) ► Hozzáadás: INSERT INTO táblanév { (oszloplista) } VALUES( konstan s| 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 } ;

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

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

136 Lekérdezés paraméterek » kifejezés_lista  oszlopkifejezés 1 {,oszlopkifejezés 2,…} » tábla_lista  táblanév 1 {,táblanév 2,...} » 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év 1 |sorszám {ASC|DESC}

137 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)

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

139 Összehasonlító operátorok ====; <; >; <=; >=; <> BBBBETWEEN IIIIN LLLLIKE EEEEXISTS

140 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 ;

141  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;

142

143 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

144 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

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

146 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

147 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

148 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

149 ON BOLT.BOK = KESZLET.BOK 9 BOLTÁRU KÉSZLET (ARU BOLT INNER JOIN ON ARU.AKO = KESZLET.AKO) INNER JOIN KESZLET

150 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

151 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

152 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

153 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

154 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

155 VII. előadás

156 Sütő Gergely

157 Adatbázis ablak (funkció ablak) Funkció lapok Címsor (adatbázis neve) Főmenü Adatbázis eszközsáv

158 Sütő Gergely Adatbázis ablak (funkció ablak) Funkció lapok Címsor (adatbázis neve) Főmenü Adatbázis eszközsáv

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

160 Sütő Gergely Műveletek 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

161 Sütő Gergely Műveletek 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

162 Sütő Gergely Műveletek 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

163 Sütő Gergely Adatlap nézet (adat karbantartás) Nézet váltás

164 Sütő Gergely Adatlap nézet (adat karbantartás) Nézet váltás

165 Sütő Gergely Adatlap nézet (adat karbantartás) Nézet váltás

166 Sütő Gergely Tervező nézet (szerkezet módosítás) Mezőtulajdonságok beállítása

167 Sütő Gergely Tervező nézet (szerkezet módosítás) Mezőtulajdonságok beállítása

168 Sütő Gergely Tervező nézet (szerkezet módosítás) Mezőtulajdonságok beállítása


Letölteni ppt "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."

Hasonló előadás


Google Hirdetések