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

Adatbázisok használata 2012.02.14 Rózsa Győző

Hasonló előadás


Az előadások a következő témára: "Adatbázisok használata 2012.02.14 Rózsa Győző"— Előadás másolata:

1 Adatbázisok használata 2012.02.14 Rózsa Győző raver@raver.myip.hu

2 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! A tárgy weboldala: http://www.orakulum.com 2

3 Tudnivalók kisZH-k minden egyes óra elején 7./12. héten nagy ZH Féléves feladat A féléves jegy számítása – Kis ZH-k eredménye – Nagy ZH-k eredménye – Féléves feladat – Mindegyik legalább elégségesre teljesítése A tárgy weboldala: http://www.orakulum.com 3

4 Ajánlott Irodalom – Oracle példatár (SQL, PL/SQL) (Kende Mária Nagy István) – Adatbázis-kezelés Oracle Rendszerben (Kende Mária, Kotsis Domonkos, Nagy István) – Oracle database 10g Teljes referencia (Kevin Loney) A tárgy weboldala: http://www.orakulum.com 4

5 Orakulum http://www.orakulum.com Ez a tárgy hivatalos weboldala – Ezen belül Adatbázis kezelés – Azon belül: AKT A tárgy weboldala: http://www.orakulum.com 5

6 Féléves feladat Félév során folyamatosan kell készíteni A feladatkiírás, és a követelményei a www.orakulum.com weboldalról letölthető – 01-3_FF_Követelmény MM (12).doc – 01-4_FF_Feladatkiírás MM+MI (10).doc A következő gyakorlatra mindenkinek hoznia kell a feladatkiírást (értelemszerűen kitöltve, aláírva) FONTOS: Összetett kulcsok használata!!! http://www.gazdinfo.hu (Oracle képfájl) http://www.gazdinfo.hu A tárgy weboldala: http://www.orakulum.com 6

7 Menetrend (1. NAGYZH) 1.: Normalizálás, Egyszerű SQL lekérdezések – kisZH: Papír alapú, a normalizálásból (ehhez még letölthető segédlet az Orakulumról!) 2.:Egysoros és Csoportfüggvények 3.:Többtáblás lekérdezések, és allekérdezések 4.:Interaktív környezet 5.:DDL,DML, Adatbázis tranzakciók, Megszorítások 6.:Nézettáblák, Rownum, Felső-N analízis A tárgy weboldala: http://www.orakulum.com 7

8 Menetrend (2. NAGYZH) 8.: DCL (Admin ismeretek) 9.: Részletező csoportosítások 10.: Analitikus függvények 11.: Hisztogram fv-k +1.: Féléves feladat leadása!!! A tárgy weboldala: http://www.orakulum.com 8

9 Mi az Adatbázis? Az adatbázis azonos minőségű (jellemzőjű), többnyire strukturált adatok összessége, amelyet egy tárolására, lekérdezésére és szerkesztésére alkalmas szoftvereszköz kezel. Az adatbázisok célja adatok megbízható, hosszú távon tartós (idegen szóval: perzisztens) tárolása, és viszonylag gyors visszakereshetőségének biztosítása. Forrás: Wikipedia A tárgy weboldala: http://www.orakulum.com 9

10 Mi az Adatbázis-kezelő? Az adatbázis fogalma nem keverendő össze az adatbázis-kezelővel, amely az adatbázis működtetésére, rendszerszintű és felhasználói folyamatainak szervezésére szolgál. Sok esetben azonban mégis egymás szinonimájaként használjuk (például bár a valóságban adatbázis- kezelőket vásárolunk és telepítünk, mégis sokszor mondjuk, hogy „vettem/telepítettem egy adatbázist”), ha ez félreértésre nem ad okot. Forrás: Wikipedia A tárgy weboldala: http://www.orakulum.com 10

11 Milyen adatbázis kezelő rendszereket ismertek? MS-SQL MySQL postgreSQL SQLite Oracle Database A tárgy weboldala: http://www.orakulum.com 11

12 Főbb mérföldkövek az Oracle Database fejlesztésében Soha nem volt 1-es verzió, 2-essel indult (persze ez csak marketing fogás volt) – 1979 Oracle V2 1983: Oracle 3: C nyelven írták már (COMMIT, ROLLBACK) 1988: Oracle 6: PL/SQL 1997: Oracle 8: Objektum Orientált tervezés támogatása 2005: Oracle 10gR2 Ezt használjuk A tárgy weboldala: http://www.orakulum.com 12

13 Adatmodellek Hierarchikus – Legelső adatbázis kezelők használták (fa szerkezet, szülő- gyermek kapcsolat) Hálós – Hierarchikus továbbfejlesztett változata (Itt egy gyereknek már több szülője is lehet) Relációs – ’80-as évektől a legelterjedtebb, legáttekinthetőbb modell – Az adatokat egymással kapcsolatban álló táblázatok rendszerében ábrázolja Objektum Orientált – Intelligens elemekből épül föl A tárgy weboldala: http://www.orakulum.com 13

14 Relációs adatmodell Táblázatos ábrázolás (több táblázat az adatbázis tulajdonképpen) A sorai a rekordok A sorok egy oszlopa a mező Kritériumok: – Nem lehet két azonos sor – A sorok és oszlopok sorrendje nem számít A tárgy weboldala: http://www.orakulum.com 14

15 Relációs modell - kapcsolat típusok Nincs kapcsolat 1:1 kapcsolat – Minden halmazból 1 elemnek csakis 1 elem felel meg, és viszont 1:N kapcsolat – Egy halmazból 1 elemnek több elem is megfelel, fordítva viszont csakis egyetlen egy M:N kapcsolat – Mindkét halmazból 1 elemhez tartozhat több elem, és fordítva A tárgy weboldala: http://www.orakulum.com 15

16 Kulcsok Elsődleges kulcs – Minden rekordban egyedi!!! (Lehet összetett is) – Nem lehet ‚NULL’ Idegen kulcs – Egy másik tábla elsődleges kulcsa Összetett kulcs – Legalább két attribútumból áll A tárgy weboldala: http://www.orakulum.com 16

17 Adatbázis Anomáliák Módosítási Anomália Törlési Anomália Bővítési Anomália A tárgy weboldala: http://www.orakulum.com 17

18 Normalizálás A hozzá kapcsolódó anyag az orakulum.com weboldalon a „labor”-on belül található – SQL Bevezető feladatgyűjtemény (pdf) Egyszerűen megfogalmazva: – Az az eljárás, mely segítségével az adatok ésszerű csoportosítása formálisan is elvégezhető Mi a célja? – Redundancia csökkentése A tárgy weboldala: http://www.orakulum.com 18

19 Normalizálás A függőségekre bizonyos követelményeket fogalmazunk meg (normálformák): – 1NF: Minden attribútum egyszerű – 2NF: A másodlagos attribútumok mindegyikét a kulcsattribútumok csak együttesen határozzák meg – 3NF: A másodlagos attribútumok egymástól függetlenek – BCNF (Boyce-Codd):A kulcs attribútumoknak nincs olyan részhalmaza, mely más kulcs- vagy másodlagos attribútumoktól függene. (Azaz nincs kulcstörés) A tárgy weboldala: http://www.orakulum.com 19

20 1.NF Minden attribútum egyszerű A tárgy weboldala: http://www.orakulum.com 20 NÉVFoglalkozás Tóth Gyulabádogos Tóth Gyulavízvezeték szerelő NÉVFoglalkozások Tóth Gyulabádogos, vízvezeték szerelő

21 2.NF Mi az a Funkcionális függőség? – Ha egy tulajdonság értékét, egy másik tulajdonság egyértelműen meghatározza – Mondjunk erre pár példát a hétköznapokból! A reláció minden nem elsődleges attribútuma teljes funkcionális függőségben van az összes reláció kulccsal A tárgy weboldala: http://www.orakulum.com 21

22 2. NF A tárgy weboldala: http://www.orakulum.com 22 Ismerjük föl a függőségeket! – A Terem meghatározza a férőhelyek számát – A Terem és az Óra kezdete pedig a Tárgyat

23 2. NF A tárgy weboldala: http://www.orakulum.com 23

24 3.NF A reláció nem tartalmaz funkcionális függőséget a nem elsődleges attribútumok között. Jelen esetben a Tárgy egyértelműen meghatározza az oktatót, az oktató azonban az ő email címét. (Tárgy ->Oktatóm ->Email) A tárgy weboldala: http://www.orakulum.com 24 TárgyOktatómEmail AdatbázisokRózsa Győzőraver@raver.myip.hu AnalízisKis Gáborkg@nik.uni-obuda.hu Diszkrét MatekKis Gáborkg@nik.uni-obuda.hu

25 3. NF TárgyOktatómEmail AdatbázisokRózsa Győzőraver@raver.myip.hu AnalízisKis Gáborkg@nik.uni-obuda.hu Diszkrét MatekKis Gáborkg@nik.uni-obuda.hu A tárgy weboldala: http://www.orakulum.com 25 TárgyOktatóm AdatbázisokRózsa Győző AnalízisKis Gábor Diszkrét MatekKis Gábor OktatómEmail Rózsa Győzőraver@raver.myip.hu Kis Gáborkg@nik.uni-obuda.hu

26 BCNF Boyce-Codd normál forma – A kulcs attribútumoknak nincs olyan részhalmaza, mely más kulcs- vagy másodlagos attribútumoktól függene. (Azaz nincs kulcstörés) – Tulajdonképpen a 3.NF egy szigorúbb változata – FELTÉTEL: MINDEN TANÁR CSAK EGY TÁRGYAT OKTAT, DE TÖBB FÉLÉVÉT IS – Mi lehet a probléma? Az Oktató és a Félév meghatározza a Tárgyat, de a Tárgy és a Félév pedig az Oktatót A tárgy weboldala: http://www.orakulum.com 26 OktatóTanévTárgyFélévLétszám Csicsek Judit2010-2011Matematika113 Berta Gábor2009-2010Programozás114 Csicsek Judit2011-2012Matematika215 Berta Gábor2009-2010Programozás216 Csicsek Judit2010-2011Matematika317

27 BCNF 2. TanévTárgyFélévLétszám 2010-2011Matematika113 2009-2010Programozás114 2011-2012Matematika215 2009-2010Programozás216 2010-2011Matematika317 A tárgy weboldala: http://www.orakulum.com 27 OktatóTanévTárgy Csicsek Judit2010-2011Matematika Berta Gábor2009-2010Programozás Csicsek Judit2011-2012Matematika

28 A normalizálás lépései 1.: Az ősmodell kijelölése, hívhatnánk 0. lépésnek is. 2.:Tárolandó attribútumok kijelölése 3.:Függőségek felismerése 4.: Ezen függőségek normalizálása 5.:Ezen függőségek összefoglalása 6.: Adatmodell felírása A tárgy weboldala: http://www.orakulum.com 28

29 SQL alapok Strukturált Lekérdező Nyelv – Először az Oracle használta Adattípusai – Numerikus – Alfanumerikus – Dátum – Egyéb típusok (pl: blob, clob) A tárgy weboldala: http://www.orakulum.com 29

30 Egyszerű SQL lekérdezések SELECT FROM WHERE GROUP BY HAVING ORDER BY ; A bűvös szavak, oda-vissza kell tudni Interaktív játék (Tornázzunk egy kicsit) A tárgy weboldala: http://www.orakulum.com 30

31 Egyszerű SQL lekérdezések - Ismerkedés az „sql plus”-al Virtuális gép indítása SQL plus indítása Felhasználónév: scott Jelszó: tiger Mit tegyünk ha nem sikerül belépni – 1: Várjunk egy picit, amíg a szolgáltatás elindul – 2: Szolgáltatás újraindítása A tárgy weboldala: http://www.orakulum.com 31

32 Egyszerű SQL lekérdezések - ismerkedés a táblákkal Két táblával fogunk foglalkozni Ha ezek otthon valami miatt nem töltődnének be, akkor a „labor”-on belül az init2.sql fájl kell lefuttatni (@init2). EMP tábla – Alkalmazottak tábla, mely oszlopai: EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO DEPT tábla – Telephely tábla, mely oszlopai: DEPTNO, DNAME, LOC A tárgy weboldala: http://www.orakulum.com 32

33 Egyszerű SQL lekérdezések A SELECT utasítás: – Az adatok egy halmazát válogatja ki egy táblázatba FROM: – Meghatározza, hogy mely táblából szeretnénk kiválogatni az adatokat WHERE: – Itt adhatunk meg szűrési feltételeket „;” : – Minden utasítást pontosvesszővel zárunk A tárgy weboldala: http://www.orakulum.com 33

34 Egyszerű SQL lekérdezések - példák Listázzuk ki az EMP tábla tartalmát – SELECT * FROM EMP; Listázzuk ki a DEPT tábla tartalmát – SELECT * FROM DEPT; A tárgy weboldala: http://www.orakulum.com 34

35 Egyszerű SQL lekérdezések - WHERE A segítségével szűrhetjük az eredményhalmazunkat AND: – A segítségével több feltételt is megszabhatunk egyszerre, melynek mind teljesülnie kell OR: – Ha AND helyett „OR”-t használunk, akkor elég az egyik feltételnek teljesülnie BETWEEN: – Ha két érték közé eső értékre vagyunk kíváncsiak, akkor használjuk A tárgy weboldala: http://www.orakulum.com 35

36 Egyszerű SQL lekérdezések - példák 2. Listázza ki azon dolgozók nevét, és munkakörét, akiknek a fizetése nagyobb, mint 1000$! – SELECT ENAME, JOB FROM EMP WHERE SAL > 1000; A tárgy weboldala: http://www.orakulum.com 36

37 Egyszerű SQL lekérdezések - Önálló gyakorlás Listázza ki azon dolgozók összes adatát, akiknek a fizetésük kevesebb, mint 1230$! Listázza ki azon dolgozók nevét és fizetését, akik fizetése 1500$ vagy 1600$! Listázza ki azon dolgozók nevét és fizetését, akik fizetése 1000$ és 1700$ között van! A tárgy weboldala: http://www.orakulum.com 37

38 Köszönöm a figyelmeteket! Következő órára várom a Féléves feladatkiírást, valamint a normalizálásból írunk kiszárthelyit. A tárgy weboldala: http://www.orakulum.com 38


Letölteni ppt "Adatbázisok használata 2012.02.14 Rózsa Győző"

Hasonló előadás


Google Hirdetések