Adatbázisok_használata_1_GY1_vitez
Download
Report
Transcript Adatbázisok_használata_1_GY1_vitez
2012. tavaszi félév
Vitéz Gergely
Tananyag:
◦ http://www.orakulum.com
◦ Kende Mária-Nagy István: ORACLE Példatár SQL,
PL/SQL
Elérhetőségek
◦ [email protected]
◦ http://jerry.gorextar.hu/ab1
OE-NIK 2012.
2
Letölthető: TO honlapja, orakulum.com
honlap
14 oktatási hét
2 Nagy ZH: a 7. és 14. héten
Órák elején 15 perces kisZH az előző órai
anyagokból
KisZHk pótolhatóak az 1. nagyZH utáni
alkalommal
ORACLE 10gR2 letölthető lesz innen:
http://jerry.gorextar.hu/ab1/oracle
OE-NIK 2012.
3
13. oktatási héten kell leadni
Folyamatosan követésre kerül az elkészítése
Részei:
◦
◦
◦
◦
◦
◦
Alapmodell
Normalizálás
Mintaadatok
Egyszerű és összetett lekérdezések
Nézetek
PL/SQL eljárások, triggerek
Részletes leírás az orakulum honlapon
FONTOS: Összetett kulcsok használata!!!
OE-NIK 2012.
4
Következő órára kinyomtatva el kell
hozni a feladatkiírást!
Tartalma:
◦ Egy tetszőleges (lehetőleg életszerű) feladat
szöveges megfogalmazása
◦ Minta található az orakulum.com -> Adatbáziskezelés -> Általános tudnivalók menüpontban
OE-NIK 2012.
5
Mi is az az adatbázis?
◦ Első pillantásra: adatok rendezett gyűjteménye.
… relációs adatbázis?
◦ Reláció → tábla
◦ Egyedek (rekord: a táblázat egy sora)
◦ Jellemzők (mezők)
OE-NIK 2012.
6
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
OE-NIK 2012.
7
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
OE-NIK 2012.
8
… redundancia?
◦ „Több jel felhasználása, mint amennyire adott
információ közvetítéséhez feltétlenül szükség van.”
◦ Ez jó vagy rossz?
… anomáliák?
◦ Egy művelet nem kívánt mellékhatása, amely
sokszor inkonzisztens állapotot eredményez.
◦ beszúrási, módosítási, törlési anomália
OE-NIK 2012.
9
Név
Munkakör
Cég
Cég címe
Kiss Gizi
webfejlesztő
Király
Webconsulting
Kft.
1241.
06/30-666-88-99
Sehol utca
89.
Kiss Gizi
webfejlesztő
Király
Webconsulting
Kft.
1241.
[email protected]
Sehol utca om
89.
Nagy
József
webfejlesztő
Joska66 Kft.
1254.
Bimbó
utca 2.
Elérhetőség
[email protected]
Módosítási anomália
Törlési anomália
Beszúrási anomália
◦ Kiss Gizi, hallgató, NIK, mjlko8 -> Cím?
OE-NIK 2012.
10
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)
OE-NIK 2012.
11
Normalizálás
Cél: a redundancia megszüntetése.
Orakulum.com oldalon leírás
Adatbázis-kezelés -> AKT -> Labor ->
#11_SQL Feladatgyűjtemény (29).pdf
5-8.oldal
Ajánlott jegyzet:
http://www.agt.bme.hu/szakm/adatb/db3.htm
OE-NIK 2012.
12
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)
OE-NIK 2012.
13
SELECT
FROM
WHERE
GROUP BY
HAVING
ORDER BY
;
A lekérdezést pontosvesszővel zárjuk
Az attribútumokat vesszővel választjuk el
A karakterláncokat aposztrófok közé tesszük
OE-NIK 2012.
14
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
Szerkesztő: ed fajlnev
Futtatás: @fajlnev
OE-NIK 2012.
15
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
OE-NIK 2012.
16
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
OE-NIK 2012.
17
Listázzuk ki az EMP tábla tartalmát
◦ SELECT * FROM EMP;
Listázzuk ki a DEPT tábla tartalmát
◦ SELECT * FROM DEPT;
OE-NIK 2012.
18
A segítségével szűrhetjük az
eredményhalmazunkat
Operátorok: = <> < <= > >=
Például: sal > 1000
Szöveges összehasonlítás
LIKE: ename LIKE ‘SCO%’ -> Kis és nagybetű
eltér
Ezért: UPPER(ename) LIKE UPPER(‘SCO%’)
nagybetűs
LOWER(ename) kisbetűs
OE-NIK 2012.
19
Logikai operátorok:
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
Keresés zárt intervallumban
BETWEEN 100 AND 1500
OE-NIK 2012.
20
Rendezés attribútumok alapján
ORDER BY ename ASC, sal DESC
ASC/DESC a sorrendet határozza meg
Az ASC növekvő rendezést nem kötelező
kiírni
Példa:
SELECT ename, job, sal, comm FROM emp
ORDER BY sal DESC;
OE-NIK 2012.
21
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!
OE-NIK 2012.
22
Következő órára hozzátok a feladatkiírást
nyomtatva a féléves feladathoz!
Óra elején kisZH lesz normalizálásból!
Kérdéseket a [email protected]
címre várom
OE-NIK 2012.
23