SQL ALAPOK. Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai



Hasonló dokumentumok
A relációs adatbáziskezelés szabványos nyelve Két fő csoportba sorolhatók az utasításai

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE), SELECT október október 26. Adatbázisok 1 / 17

B I T M A N B I v: T M A N

Adatbázisok. 8. gyakorlat. SQL: CREATE TABLE, aktualizálás (INSERT, UPDATE, DELETE) október október 22. Adatbázisok 1 / 14

Az SQL nyelv Structured Query Language (Struktúrált lekérdező nyelv)

8. Gyakorlat SQL. DDL (Data Definition Language) adatdefiníciós nyelv utasításai:

Adatbázisok. 2. gyakorlat SQL november november 12. Adatbázisok 1 / 31

Bevezetés: az SQL-be

Adatbázis-kezelés. Harmadik előadás

Tartalomjegyzék. Tartalomjegyzék 1. Az SQL nyelv 1 Az SQL DDL alapjai 2

Adatbázis Rendszerek I. 10. SQL alapok (DML esettanulmány)

SQL- Utasítások csoportosítása Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER

SQL. 1.rész. 1.elıadás // Adatbázisok-1 elıadás // Ullman-Widom (Stanford) tananyaga alapján // Hajas Csilla (ELTE IK) 1

Bevezetés az SQL-be. Tankönyv: Ullman-Widom: Adatbázisrendszerek Alapvetés Második, átdolgozott kiadás, Panem, 2009

Adatbázis használat I. 5. gyakorlat

Adatbázis Rendszerek I. 9. SQL alapok (DDL esettanulmány)

Adatbázis-kezelés, információs-rendszerek

Adatbázis rendszerek SQL nyomkövetés

Informatikai képzés Információs rendszerek dr. Hajas Csilla (ELTE IK)

Adatbázis Rendszerek II. 8. Gyakorló környezet

Adatbázisok elmélete 10. előadás

Keskeny Zoltán 2007/08 SQL. Structured Query Language. (gyakorlat az SQL2 szabvány alapján) Keskeny Zoltán tanév

Adattípusok. Max. 2GByte

3. Előadás. Az SQL adatbázisnyelv (Tartalom) Az SQL története. Az SQL felépítése. Adattípúsok. SQL utasítások

Adattípusok. Max. 2GByte

Adatbázis kezelés Delphiben. SQL lekérdezések

SQL haladó. Külső összekapcsolások, Csoportosítás/Összesítés, Beszúrás/Törlés/Módosítás, Táblák létrehozása/kulcs megszorítások

Adatbázisok* tulajdonságai

BEVEZETÉS Az objektum fogalma

Relációsémák létrehozása SQL nyelvben

Adatbázis-kezelés alapok Adatbázisok című tárgyhoz, ismétlés kapcsán

Tábla létrehozása: CREATE TABLE alma( ID INT( 3 ) NOT NULL PRIMARY KEY, Leiras VARCHAR( 100 ) );

A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni:

SQL DDL-1: táblák és megszorítások

Készítette: Szabóné Nacsa Rozália

Adatbázisok elmélete 9. előadás

Adatbázis-lekérdezés. Az SQL nyelv. Makány György

Adatbázisok elmélete 9. előadás

SQL parancsok feldolgozása

Java és web programozás

Adatbázisok. 9. gyakorlat SQL: SELECT október október 26. Adatbázisok 1 / 14

Adatbázisok-1 előadás Előadó: dr. Hajas Csilla

ADATBÁZIS-KEZELÉS FÉLÉVES FELADAT

Megszorítások. AB1_06A_Megszorítások - Adatbázisok-1 EA (Hajas Csilla, ELTE IK) - J.D. Ullman elıadásai alapján

Adatbázis I. 11. előadás. Kulcsok az SQL ben. Hivatkozásépségi megszorítások és idegen kulcsok.

STRUCTURED QUERY LANGUAGE(SQL) - ALAPOK

SQL. Táblák összekapcsolása lekérdezéskor Aliasok Allekérdezések Nézettáblák

Adatbázis-kezelés. Második előadás

Dr. Pál László, Sapientia EMTE, Csíkszereda WEB PROGRAMOZÁS 4.ELŐADÁS. Adatbázis alapú alkalmazások készítése PHP-ben

Elemi alkalmazások fejlesztése IV.

Az SQL nyelv. SQL (Structured Query Language = Strukturált Lekérdező Nyelv).

Adatbázisok I. Definíció: DDL: - objektum létrehozás CREATE - objektum megszüntetés DROP - objektum módosítás ALTER

AB1 ZH mintafeladatok. 6. Minősítse az állításokat! I-igaz, H-hamis

SQL gyakorló feladatok. 6. Adatbázis gyakorlat április 5.

Programozás. Adatbázis-kezelés (alapok) Fodor Attila

Az SQL adatbázisnyelv: DML

SQL PÉLDATÁR. készült a PTE TTK Iskolai informatika III. kurzus teljesítésére

Gyakorlás: Hozzunk létre egy Alkalmazottak táblát AZO szám, Részleg szöveg, Munkakör szöveg és BelépésDátuma dátum típussal.

Adatbázisok-I. előadás dr. Hajas Csilla (ELTE IK)

Adatbázis, adatbázis-kezelő

Adatbázis rendszerek. Molnár Bence. Szerkesztette: Koppányi Zoltán

Célkitűzések Az Oracle10 g felépítésének, használatának alapszíntű megismerése

Adatbázis rendszerek. Molnár Bence. Szerkesztette: Koppányi Zoltán

Vizuális programozás gyakorlat

Java és web programozás

Az indexelés újdonságai Oracle Database 12c R1 és 12c R2

ADATBÁZIS RENDSZEREK I BEADANDÓ

Adatbázis tartalmának módosítása

Adatbázisok tavaszi félév Vizsgatételsor

ADATBÁZIS-KEZELÉS - BEVEZETŐ - Tarcsi Ádám, ade@inf.elte.hu

ADATBÁZISOK gyakorlat: SQL 2. rész SELECT

Webfejlesztés 4. alkalom

SQL*Plus. Felhasználók: SYS: rendszergazda SCOTT: demonstrációs adatbázis, táblái: EMP (dolgozó), DEPT (osztály) "közönséges" felhasználók

6.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK)

B I T M A N B I v: T M A N

Relációs algebra áttekintés és egy táblára vonatkozó lekérdezések

Adatbázis-kezelés alapjai SQL 1: DDL, DML. v: B IT MAN 92/1B IT MAN

Adatbázis Rendszerek II. 6. PLSQL Triggerek 32/1B IT MAN

A gyakorlat során MySQL adatbázis szerver és a böngészőben futó phpmyadmin használata javasolt. A gyakorlat során a következőket fogjuk gyakorolni:

Adatbázisok I A relációs algebra

Gazdasági folyamatok térbeli elemzése. 5. elıadás

Információs rendszerek Adatbázis-kezelés

Adatbázis Rendszerek II. 3. SQL alapok

SQL jogosultság-kezelés. Privilégiumok Grant és Revoke Grant Diagrammok

Adatbáziskezelés php-ben MySQL adatbáziskezelı rendszert használva

SQLServer. DB Recovery modes

SQL DDL: Táblák, megszorítások (constraints), triggerek, nézettáblák

INFORMATIKA ÁGAZATI ALKALMAZÁSAI. Az Agrármérnöki MSc szak tananyagfejlesztése TÁMOP /1/A

LOGISZTIKAI ADATBÁZIS RENDSZEREK BEVEZETÉS

BEVEZETÉS Az objektum fogalma

B I T M A N B I v: T M A N

9.előadás: Adatbázisok-I. dr. Hajas Csilla (ELTE IK)

A relációs algebra egy speciális algebra, amely néhány egyszerű, de hathatós. operandusok. Egy reláció megadható a nevével vagy közvetlenül, sorainak

Adatbázis Rendszerek II. 2. Gyakorló környezet

B I T M A N B I v: T M A N

XML alapú adatbázis-kezelés. (Katona Endre diái alapján)

Adatbázis Rendszerek II. 2. Ea: Gyakorló környezet

A trigger egy aktualizálási művelet esetén végrehajtandó programrészletet definiál. Alakja:

Adatbáziskezelő-szerver. Relációs adatbázis-kezelők SQL. Házi feladat. Relációs adatszerkezet

Adatbázis rendszerek tervezése

Átírás:

SQL ALAPOK Bevezetés A MYSQL szintaxisa Táblák, adatok kezelésének alapjai

BEVEZETÉS SQL: Structured Query Language Strukturált Lekérdező Nyelv Szabvány határozza meg, azonban számos nyelvjárása létezik egy ilyen a MySQL rendszerben használt változat (ezt vesszük) Nincs jelentős eltérés a különböző változatok közt Nem algoritmikus nyelv, jellemző használata: Beágyazzuk egy algoritmikus nyelven írt programba az SQLutasítást Az SQL-utasítás hatására az adatbázis előáll a válasszal Az algoritmikus nyelven íródó programban feldolgozzuk az adatokat

AZ SQL KÉT RÉSZE Az SQL-utasításokat a jellegük alapján két részre osztjuk DDL Data Definition Language adatdefiníciós nyelv DML Data Manipulation Language adatkezelő utasítások

AZ SQL SZINTAXISA Beszédes nyelv, az utasítások neve általában a megfelelő angol szó, ezekből alkotunk mondatokat a nyelv alapszavait általában nagybetűkkel írjuk, de a kisbetűs írásmód is egyenértékű SELECT attrib FROM tábla; select attrib from tábla; A parancsokat írhatjuk sorfolytonosan, vagy akár tagoltabban, a végüket ; jelzi Változó nincs, csak attribútumorkra lehet hivatkozni ha egy utasításon belül nem egyértelmű, mire, elérírjuk a tábla nevét: tábla.attrib

AZ SQL SZINTAXISA, SQL LOGIKA Szövegkonstans: idézőjelek közt Relációjelek: =, <=, >=,!=, <> A logikában szokásos műveletek: AND, OR, NOT. Az SQL logika nem a klasszikus igaz-hamis logika, hanem úgymond háromértékű: TRUE, FALSE, UNKNOWN. Ha valahol NULL ( nem definiált, nem adott ) érték fordul elő, a rá vonatkozó logikai kifejezés kiértékelése ismeretlent ad válaszul Ha azt akarjuk ellenőrizni, hogy egy adott atttribútum NULL-e, akkor: attrib IS NULL NEM fog helyes választ adni: attrib=null

ADATBÁZIS LÉTREHOZÁSA CREATE DATABASE adatbázis_neve; Létrehoz egy új, üres adatbázist a kiszolgálón (pl. kiadható a konzolon.) Konzolos elérésnél a USE adatbázis_neve; paranccsal lehet kiválasztani egy adatbázist, programozási környezetekből elérve általában valamilyen metódushívással.

SÉMÁK DEFINIÁLÁSA A relációs adatbázissémákat definiálnunk kell az adatbázis létrehozása után CREATE TABLE [IF NOT EXISTS] séma_neve ( attr1 {ADATTÍPUS} [{megszorítások}], attr2 {ADATTÍPUS} [{megszorítások}], attrn {ADATTÍPUS} [{megszorítások}] [,{táblaszintű_megszorítások}] ) [{táblára_vonatkozó_megszorítások}];

SQL ADATTÍPUSOK a korábbi parancsban {adattípus} helyére a következők valamelyike kerül: INT(n) CHAR(n) VARCHAR(n) n jegyű egész szám pontosan n hosszú szöveg legfeljebb n hosszú szöveg DATE dátum, pl. 2012-10-17 TIME időpont, pl. 11:10:45 REAL valós szám (létezik néhány egyéb adattípus is)

PÉLDA: TÁBLA DEFINIÁLÁSA Egy autók adatait tároló táblát így definiálnánk: CREATE TABLE IF NOT EXISTS auto ( sorszam INT(10) PRIMARY KEY, rendszam CHAR(6), gyarto VARCHAR(128), evjarat INT(4), tipus VARCHAR(128) ); Elsődleges kulcs

MEGSZORÍTÁSOK Oszlopszinten: PRIMARY KEY elsődleges kulcs UNIQUE kulcs REFERENCES más_tábla(attrib) [{ON-feltételek}] külső kulcs NOT NULL nem lehet null AUTO_INCREMENT mindig növekszik az értéke Táblaszinten: PRIMARY KEY (oszlop_lista) ha több attribútumból áll a kulcs FOREIGN KEY (oszlop_lista) REFERENCES másik_tábla(oszlop_lista) [{ON-feltételek}] hasonlóan

MEGSZORÍTÁSOK ON feltételek: külső kulcsoknál megadható, hogy történjen-e valami az aktuális táblában, ha a táblában, ahol elsődleges kulcsként fordul elő az attribútum, valamilyen változás áll be pl. ha egy vevőt törölnek egy adatbázisból, elérhető így, hogy automatikusan törlődjön az összes vásárlása is. ON UPDATE CASCADE adatmódosításnál a friss adat bemásolódik ON DELETE CASCADE ha törlik a hivatkozott sort, törlődnek a rá hivatkozó sorok is ON DELETE SET NULL a hivatkozott sor törlésekor a hivatkozó sorokban NULL kerül a külső kulcsba

TÁBLÁK MÓDOSÍTÁSA Létrehozás után lehetőség van a tábák szerkezetén, kulcsain, kapcsolatain változtatni valamint törölhetők ALTER TABLE tábla_neve ADD (oszlopnév {TÍPUS} [{feltételek}]); ALTER TABLE tábla_neve MODIFY (oszlopnév [{feltételek}]); ALTER TABLE tábla_neve DROP(oszlopnév1,, oszlopnévk); DROP TABLE tábla_neve;

ADATBEVITEL INSERT INTO tábla_neve VALUES ({az oszlopok értékei az új rekordban}); ha csak néhány oszlopot töltenénk fel, és a többi maradjon null: INSERT INTO tábla_neve (oszlop1,,oszlopk) VALUES (érték1,,értékk); Például: INSERT INTO hallgato (eha, nev, szak, eletkor) VALUES ( mintaat.sze, Minta Áron, programtervező informatikus BSc, 22);

ADATMÓDOSÍTÁS UPDATE tábla_neve SET oszlop1 = érték1,, oszlopk = értékk [WHERE feltétel]; A WHERE feltételben valamilyen feltételt kell megadni arra, mely sorok módosuljanak. Példa: UPDATE hallgato SET eletkor=23 WHERE eha= mintaat.sze ;

ADATOK TÖRLÉSE DELETE FROM tábla_neve [WHERE feltéltel]; Törli a feltétel szerinti sort vagy sorokat az adott táblából Példa: Töröljük a hallgatókat, akiknek 34 és 40 közti az életkoruk: DELETE FROM hallgato WHERE eletkor BETWEEN 34 AND 40;

FELADATOK Osztály (osztálykód, osztálynév, vezadószám) Dolgozó (adószám, név, lakcím, fizetés, osztálykód) 6.1 Hozzuk létre a sémák feletti táblákat! Hogyan adnánk meg, hogy vezadószám külső kulcs? 6.2 Szúrjunk be a hulladékgatdálkodási osztályt, és egy új dolgozót erre az osztályra. Nevezzük is ki osztályvezetőnek. 6.3 Növeljük az összes 10 és 20 közti osztálykódú dolgozó fizetését 20%- kal. 6.4 Kovács Márta nyugdíjba ment. Töröljük az adatait. 6.5 Töröljük ki a hulladékgazdálkodási osztályt.