1 / 38

Adatbázisok használata

Adatbázisok használata. 2012.02.14 Rózsa Győző raver @ raver.myip.hu. 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!. Tudnivalók .

Download Presentation

Adatbázisok használata

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  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

  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

  4. Ajánlott Irodalom • Oracle példatár (SQL, PL/SQL)(Kende MáriaNagy 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

  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

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

  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

  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

  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

  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

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

  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

  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

  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

  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

  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

  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

  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

  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

  20. 1.NF • Minden attribútum egyszerű A tárgy weboldala: http://www.orakulum.com

  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

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

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

  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

  25. 3. NF A tárgy weboldala: http://www.orakulum.com

  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

  27. BCNF 2. A tárgy weboldala: http://www.orakulum.com

  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

  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

  30. Egyszerű SQL lekérdezések • SELECTFROMWHEREGROUP BYHAVINGORDER 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

  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

  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

  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

  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

  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

  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, JOBFROM EMPWHERE SAL > 1000; A tárgy weboldala: http://www.orakulum.com

  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

  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

More Related