Előadást letölteni
Az előadás letöltése folymat van. Kérjük, várjon
KiadtaVirág Gulyásné Megváltozta több, mint 10 éve
1
– SQL 2: Adatok kezelése – Tarcsi Ádám, ade@elte.hu 2007. január 30. Adatbázis gyakorlat
2
Miről lesz szó? Adatok rögzítése Adatok módosítása Adatok törlése Táblák módosítása – munka a táblákkal
3
DML műveletek új sorokat tudunk beszúrni (INSERT INTO) létező sorok adatait tudjuk módosítani (UPDATE) sorokat tudunk törölni (DELETE) Tranzakciókezelés: bank példa! COMMIT: jóváhagyás ROLLBACK: visszavonás Autocommit előnye, hátránya!
4
Adatok rögzítése – INSERT INTO INSERT INTO [(, …, )] VALUES (, …, ) Példa: INSERT INTO tTanar VALUES (1,’Zsakó László’); COMMIT;
5
Feladatok - INSERT Feladat:Feladat: Töltsük fel a tTanar táblát az ábrának megfelelően! Feladat:Feladat: Rögzítsük 1-es azonosítóval Nagy Júliát, aki 14 éves és az 2-es azonosítójú tanár tanítja! Feladat:Feladat: Töltsük fel további adatokkal a tDiak táblát!
6
Adatok módosítása: UPDATE UPDATE SET =, …, = [WHERE ] Ha nincs WHERE, akkor a tábla összes rekordjára vonatkozik a módosítás. FeladatFeladat: Nagy Júlia Anna egy évvel idősebb lett, módosítsuk az adatait ennek megfelelően! UPDATE tDiak SET Kor=Kor+1 WHERE DAzon=1 Mire Hol Mit, feltétel
7
Feladatok - UPDATE FeladatFeladat: Módosítsuk az 1-es azonosítójú diák nevét ’Nagy Júlia Anna’-ra! UPDATE tDiak SET Nev=’Nagy Júlia Anna’ WHERE DAzon=1; COMMIT; FeladatFeladat: Minden diáknak a 2-es aztonosítójú tanár legyen az osztályfőnöke! Tipp: where nélkül
8
Adatok törlése - DELETE DELETE FROM [WHERE ] Ha nincs WHERE, akkor a tábla összes rekordját töröljük. FeladatFeladat: Töröljük az 1-es azonosítójú diákot! DELETE FROM tDiak WHERE DAzon=1; COMMIT;
9
Feladatok – DELETE, COMMIT FeladatFeladat: Töröljük a 3-as azonosítójú tanárt. Miért nem sikerül? FeladatFeladat: Töröljük azokat a diákokat, akiknek a 3-as azonosítójú tanár az osztályfőnökük! Mi történik, ha nem használunk COMMIT- ot a törlés után?
10
Táblamódosítás - ALTER TABLE …; Új oszlop hozzáadása a táblához (a tábla „végére”) –ALTER TABLE ADD ; –Adjunk egy Kor nevű egész típusú oszlopot a tTanar táblához! –ALTER TABLE tTanar ADD Kor INTEGER; Egy oszlop típusának módosítása –ALTER TABLE MODIFY ; –Típusproblémák!!! –Legyen a tDiak tábla Nev mezőjének típusa 50 hosszú szöveg! –ALTER TABLE tDiak MODIFY Nev VARCHAR(50); egy oszlop törlése –ALTER TABLE DROP COLUMN ; –(Ha az oszlop például elsődleges kulcs, akkor a művelet hibához vezet.) –Töröljük a tTanar táblából a Kor oszlopot! –ALTER TABLE tTanar DROP COLUMN Kor;
11
Megszorítás módosítása Tábla szintű megszorítások: ALTER TABLE ADD CONSTRAINT ; FeladatFeladat: Adjunk egy olyan megszorítást a tTanar táblához, aminek következtében nem tárolhatunk két ugyanolyan nevű tanárt! ALTER TABLE tTanar ADD CONSTRAINT uq_tTanar UNIQUE (Nev); Ellenőrzés: INSERT INTO tTanar VALUES (1,'Tarcsi Ádám');
12
Megszorítás módosítása – 2. Megszorítás törlése: ALTER TABLE DROP CONSTRAINT ; FeladatFeladat: Dobjuk el az előbbi megszorítást! ALTER TABLE tTanar DROP CONSTRAINT uq_tTanar; Ellenőrzés: INSERT INTO tTanar VALUES (1,'Tarcsi Ádám');
13
Mezőszintű megszorítások módosítása MODIFY segítségével NOT NULL megszüntetése: NULL Példa:Példa: Legyen a tDiak tábla Kor mezőjének 18 az alapértelmezett értéke! ALTER TABLE tDiak MODIFY Kor INTEGER DEFAULT 18; Ellenőrzés: INSERT INTO tDiak (DAzon, Nev) VALUES (7,'Pap Éva');
14
Táblák eldobása DROP TABLE ; FeladatFeladat: Dobjuk el a tDiak táblát! Megoldás: DROP TABLE tDiak; FeladatFeladat: Dobjuk el a tTanar táblát! Megoldás: DROP TABLE tDiak; Házi feladat: tDiak és tTanar táblák elkészítése!!!
15
COMMIT, ROLLBACK gyakorlás FeladatFeladat: Vigyünk fel még egy diákot! Kérdezzük le a tDiak tábla tartalmát. Majd egy rollback kiadása után nézzük meg, mi történt. Ugyanezt csináljuk, de a felvitelkor kommitáljunk! FeladatFeladat: Hajtsuk végre a következő utasításokat! DELETE FROM tDiak SELECT * FROM tDiak ROLLBACK SELECT * FROM tDiak
Hasonló előadás
© 2024 SlidePlayer.hu Inc.
All rights reserved.