Adatbázisok gyakorlat

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.
Tananyag: konzultáció
2012. tavaszi félév Véső Tamás. A jelen bemutatóban található adatok, tudnivalók és információk a számonkérendő anyag vázlatát képezik. Ismeretük szükséges,
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda 4. Előadás Az SQL adatbázisnyelv Sorváltozók Alkérdések Ismétlődő sorok Összesítések 1.
Lekérdezések SQL-ben Relációs algebra A SELECT utasítás
Adatbázis gyakorlat 1. Szerző: Varga Zsuzsanna ELTE-IK (2004) Budapest
© Kozsik Tamás Adatbáziskezelés •Relációs adatbáziskezelők •Noha a Java objektum-elvű, egyelőre nem az objektum-elvű adatbáziskezelőket támogatja.
Adatbázis rendszerek I Relációs kalkulus Általános Informatikai Tsz. Dr. Kovács László.
Adatbázis rendszerek I
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.
Elmaradás.  0 Számjegy. Ebben a pozícióban egyetlen számjegyet kell megadnia.  9 Számjegy. Ebben a pozícióban egyetlen számjegyet lehet megadni, nem.
Delphi programozás alapjai
SQL Structured Query Language
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ő.
Adatbázis gyakorlat – SUBSELECT – Tarcsi Ádám március.
– 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ő
SQL – DQL (Data Query Language ) adat lekérdezések
INSERT INTO Egy vagy több rekordot ad hozzá a táblához. Egyetlen rekordot hozzáfűző kifejezés: INSERT INTO cél_tábla (mező1,mező2,…) VALUES (érték1, érték2,
(MY)SQL MEGJEGYZÉSEK. MYISAM VS. INNODB  A MySQL-ben többféle tárolási motor is használatos: MyISAM, InnoDB  A régebbi verziókban a MyISAM alapértelmezett,
Adatbázis rendszerek II.
Delphi programozás alapjai Nagyváradi Anett PTE PMMK MIT.
ADATBÁZISOK
ADATBÁZISOK
Adattáblák létrehozása, módosítása, tranzakciók, megszorítások Rózsa Győző.
RDF és SPARQL. Felhasznált anyagok Marcelo Arenas, Claudio Gutierrez, Jorge Peréz: RDF and SPARQL: Database Foundations (bemutató) Claudio Gutierrez,
Adatbázis kezelés SQL. Történeti áttekintés 1976IBM:SEQUEL,SQL 1976IBM:SEQUEL,SQL 1983ORACLE 1983ORACLE 1984INFORMIX 1984INFORMIX 1986SQL – szabvány :
Lekérdezésfordító Adatbázisok 2.. Elemzés Lekérdezés Elemző Előfeldolgozó Logikai lekérdezéstervet generáló Lekérdezésátíró Jónak vélt logikai lekérdezésterv.
Lekérdezésfordító Adatbázisok tervezése, megvalósítása, menedzselése.
Kifejezések. A legfontosabb függvények.
SQL, Relációs adatmodell
Relációs algebra. A relációs adatbáziskezelő nyelvek lekérdező utasításai a relációs algebra műveleteit valósítják meg. A relációs algebra a relációkon.
- adatbázisséma definiálása (DDL) Data Definition Languages, - adatok aktualizálása (DML),Data Maniputaion Language - lekérdezési lehetőségek (DML) Data.
SQL. SQL = Structured Query Language (= struktúrált lekérdező nyelv). A relációs adatbázis-kezelés szabványos nyelve. Nem algoritmikus nyelv, de algoritmikus.
SQL.
Az SQL nyelv alapjai.
Access XP Kifejezés-szerkesztő Összehasonlító operátorok:
2012. tavaszi félév Véső Tamás Véső Tamás OE­NIK / 29.
Adatbázis-kezelés SQL-lel. SQL SQL = Structured Query Language – Strukturált Lekérdezőnyelv Relációs adatbázis-kezelők lekérdezési nyelve. Alapjait az.
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.
– SQL 3: SELECT - 1. – Tarcsi Ádám, január 31. Adatbázis gyakorlat.
– SELECT - 2. – Tarcsi Ádám március Adatbázis gyakorlat.
Tarcsi Ádám, Adatbázis gyakorlat – Adattáblák – Tarcsi Ádám, január.
– SELECT - 2. – Tarcsi Ádám március Adatbázis gyakorlat.
1 Informatikai Szakképzési Portál Adatbázis kezelés DQL – Adatlekérdező nyelv.
Adatbázis alapfogalmak
5. gyakorlat Fleiner Rita.
Többtáblás lekérdezések, hierarchikus lekérdezések, allekérdezések
Webprogramozó tanfolyam
SQL történelem 1970 Edgar F. Codd (IBM) cikke 12 szabály a relációs adatmodellekre 1979 első kereskedelmi forgalmazású relációs adatbáziskezelő 1986 az.
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.
Adatbázisok használata
Programozás III JPA.
Adatbázisok használata
SQL bevezetés Select-From-Where záradékok
Adatbázisok 1. SQL (alkérdések). Az IN használata Emlékezzünk vissza: Az IN után szereplő multihalmaz elemei lekérdezéssel is megadhatók SELECT nev FROM.
SQL aggregálás, csoportosítás és összekapcsolás Adatbázisok 1.
Lekérdezések Adott tulajdonságú adatok listázásának módja a lekérdezés. A lekérdezések segítségével az adatbázisból megjeleníthetjük, módosíthatjuk, törölhetjük.
Logisztikai projekt - gyakorlat Adatbázis-elmélet
Adatbázisok használata
Sapientia - Erdélyi Magyar TudományEgyetem (EMTE) Csíkszereda
Előadás 03 Algebrai optimalizáció Mi a NULL? Multihalmazok
Előadás másolata:

Adatbázisok gyakorlat SQL (alap) Adatbázisok gyakorlat

Relációs adatmodell Egy reláció sémája: Sör (név, ország). Az adatbázis sémája: Sör (név, ország), Bár (név, város, tulaj), Felszolgál (sör, bár, ár). Sör Bár attribútumok név ország Soproni Magyar Kozel Cseh Dreher Német név város tulaj Makk 7-es Budapest Géza Lórúgás Győr Ica Felszolgál előfordulás sör bár ár Kozel Makk 7-es 320 Dreher 400 Soproni Lórúgás 280 sorok

SQL Structured Query Language Legfontosabb részei Deklaratív nyelv SELECT FROM WHERE Deklaratív nyelv Multihalmaz szemantikát használ Azaz a relációkban (táblázatokban) ismétlődhetnek a sorok

SQL szintaktika Nem érzékeny a kis- és nagybetű különbségre kivétel sztringek: "kakas" ≠ "Kakas" Minden lekérdezést ; zár. Egysoros megjegyzés --, többsoros megjegyzés /* */

Adatbázisunk Szeret (nev, gyumolcs) Hajoosztalyok (osztaly, tipus, orszag, agyukSzama, kaliber, vizkiszoritas) Hajok (nev, osztaly, felavatva) Csatak (nev, datum) Kimenetelek (hajo, csata, eredmeny)

FROM záradék Megadása kötelező A lekérdezésben használt táblákat adhatjuk meg itt A táblaneveket , választja el egymástól Az egyes táblák a lekérdezés erejéig átnevezhetők a tábla neve az adatbázisban nem változik meg, csak az adott lekérdezésben hivatkozhatunk rá a megadott névvel

SELECT záradék Megadása kötelező Az eredményben szereplő attribútumokat sorolhatjuk itt fel Az attribútumokat , választja el egymástól Az attribútumok kifejezésben is szerepelhetnek aritmetikai műveletek sorfüggvények Az attribútumok és a kifejezések átnevezhetők

Példák SELECT nev FROM szeret; SelEct NeV FROm szereT; SELECT nev, gyumolcs SELECT * SELECT gyumolcs AS gyumi FROM szeret; SELECT gyumolcs gyumi SELECT gyumolcs FROM szeret sz; SELECT (3+2)/7 AS pelda FROM DUAL;

WHERE záradék A kiválasztandó sorokra fogalmazhatunk meg szűrő feltételt A megadható kifejezések: aritmetikai összehasonlítások (=, <, >, <>, !=, <=, >=) (sztringek és dátumok esetén is értelmezhetőek) AND, OR, NOT (logikai ÉS, VAGY, NEM) BETWEEN (egy érték beleesik-e egy zárt intervallumba) LIKE (lásd később) IS NULL (egy mező értéke NULL vagy sem, tagadása NOT IS NULL) IN (egy érték eleme-e egy halmaznak, tagadása NOT IN) stb.

Példák I. SELECT nev FROM szeret WHERE gyumolcs = 'ALMA'; WHERE gyumolcs = 'ALMA' OR gyumolcs = 'KORTE'; SELECT nev FROM szeret WHERE gyumolcs IN ('ALMA', 'KORTE'); WHERE nev > 'PETER';

Példák II. SELECT nev FROM szeret WHERE gyumolcs IS NULL; FROM csatak WHERE datum BETWEEN DATE '1941-12-07' AND DATE '1944-06-06'; SELECT nev FROM szeret WHERE gyumolcs = 'alma'; Üres eredmény. Miért?

LIKE használata A LIKE segítségével mintát illeszthetünk A minták két speciális karaktert tartalmazhatnak _ tetszőleges karaktert helyettesít % tetszőleges karaktersorozatot helyettesít (akár 0 hosszúságút is) SELECT nev FROM szeret WHERE nev LIKE 'E%E%' AND gyumolcs LIKE '_L_A';

Megjegyzés SELECT nev FROM szeret WHERE gyumolcs LIKE 'ALMA'; WHERE gyumolcs = 'ALMA'; A két lekérdezés eredménye mindig ugyanaz. Ám ha nem szeretnénk mintát illeszteni, ne a LIKE utasítást használjuk.

Összekapcsolás Érdemes megnézni mi lesz az alábbi lekérdezés eredménye SELECT * FROM kimenetelek, hajok; Az eredményben a kimenetelek tábla minden sora "párban áll" a hajok tábla minden sorával A legtöbb lekérdezésben csak azok a sorpárok érdekesek számunkra, ahol a sorok ugyanarra a hajóra vonatkoznak.

Példa SELECT felavatva FROM hajok, kimenetelek WHERE nev = hajo AND eredmeny = 'elsullyedt'; SELECT h.nev, h.osztaly FROM hajok h, hajoosztalyok ho WHERE ho.osztaly = h.osztaly AND agyukszama >= 7;

Halmazműveletek A halmazműveletek a szokásosak UNION (unió) INTERSECT (metszet) MINUS (különbség) Az eredményben az ismétlődő sorok kiküszöbölésre kerülnek A SELECT záradékokban az attribútumok típusa páronként meg kell, hogy feleljen egymásnak az első attribútumok típusa vagy megegyezik, vagy automatikus konverzióval egymásba alakítható, a második attribútumokra ugyanez teljesül stb. az attribútumnevek különbözhetnek

Példa SELECT nev FROM hajok MINUS SELECT hajo FROM kimenetelek WHERE eredmeny = 'elsullyedt';

Multihalmaz műveletek UNION ALL, INTERSECT ALL, MINUS ALL Ha egy t sor k-szor szerepel R-ben és s-szer S-ben, akkor k+s-szer szerepel R UNION ALL S-ben, min(k, s)-szer R INTERSECT ALL S-ben és min(0, k-s)-szer R MINUS ALL S-ben. Az Oracle csak a UNION ALL-t implementálta.

Ismétlődések kiküszöbölése Az eredményből az ismétlődő sorok a DISTINCT utasítással küszöbölhetők ki. DISTINCT utasítás csak a SELECT záradékban szerepelhet később látni fogjuk, hogy máshol is Példa: SELECT DISTINCT nev FROM szeret;

Sztring kezelése (alapok) A szeret táblában minden érték csupa nagybetűvel szerepel, a többi táblában nem Ha ezzel nem szeretnénk foglalkozni, a sztringeket csupa nagy- vagy kisbetűssé alakíthatjuk át UPPER LOWER

Példák SELECT nev FROM szeret WHERE LOWER(gyumolcs) = 'alma'; WHERE gyumolcs = UPPER('alma'); Ez helyes lekérdezés, de vegyük észre: UPPER('alma') = 'ALMA'

Feladatok I. Milyen gyümölcsöket szeret Anna? Milyen csaták voltak 1943-ban és 1944-ben? Mely hajók vettek részt 1944-es csatában? Az elsüllyed hajók hány ágyúval rendelkeztek (hajo_nev, agyuk_szama)? Milyen gyümölcsöket nem szeret Anna? Melyek azok a hajók, amelyeket nem Japánban gyártottak? Melyek azok a hajóosztályok, amelyből minden hajó épen maradt?

Feladatok II. Kik szeretnek legalább két gyümölcsöt? Kik szeretnek legfeljebb egy gyümölcsöt? Mely csatában vett részt legalább két hajóosztályból való hajó?