– Adattáblák & adatok kezelése – Tarcsi Ádám január Adatbázis gyakorlat
Példa CREATE TABLE tTanar (TAzon INTEGER NOT NULL, Nev VARCHAR(50), CONSTRAINT pk_tTanar PRIMARY KEY (TAzon)) CREATE TABLE tDiak (DAzon INTEGER NOT NULL, Nev VARCHAR(50) NOT NULL, Kor INTEGER NOT NULL, TAzon INTEGER NOT NULL, CONSTRAINT pk_tDiak PRIMARY KEY (Dazon), CONSTRAINT fk_tDiak_tTanar FOREIGN KEY (TAzon) REFERENCES tTanar (TAzon), CONSTRAINT ck_tDiak CHECK (Kor BETWEEN 1 AND 100), CONSTRAINT uq_tDiak UNIQUE (Nev))
Describe Adatbázis-objektumokról kérhetünk le összefoglaló információt. Pl.: describe tDiak
Munka a táblákkal Tábla feltöltése INSERT INTO táblanev [oszlopok] VALUES (érték [,érték] …); INSERT INTO tDiak VALUES (7,'Nagy Júlia', 14, 1); Tábla törlése DROP TABLE
Táblamódosítás ALTER TABLE … Új oszlop felvétele: ADD Oszlop módosítása: MODIFY Oszlop törlése: DROP COLUMN
Oszlopbővítés ALTER TABLE ADD ( );
Oszlop módosítás ALTER TABLE MODIFY ( ); Ha a tábla fel van töltve, csak olyan típusra lehet módosítani, hogy az oszlopban lévő adatok megfeleljenek a táblában már tárolt adatoknak!
Oszlop törlés ALTER TABE DROP COLUMN
Adatok lekérdezése Input: 1 vagy több tábla Output: a megfogalmazott feltételeknek eleget tevő rekordokat tartalmazó „tábla”
SELECT utasítás SELECT [ALL/DISTINCT] {*/, …, } FROM [ ], …, [ ] [WHERE GROUP BY, …, HAVING ORDER BY [ASC/DESC], …, [ASC/DESC]]
SELECT SELECT * FROM Eredménye: ugyanolyan tábla, mint a bemeneti SELECT * FROM, Eredménye: a két tábla direktszorzata (oszlopainak száma a két bemeneti tábla oszlopszámainak összege) Ha több táblából kérdezünk le, meg kell adni, hogy a kívánt mező mely táblából való (minősítés):. SELECT t1.a FROM t1, t2 Konstans érték megadás SELECT a,1,’hello’ FROM t1
Adatok rögzítése – INSERT INTO INSERT INTO [(, …, )] VALUES (, …, ) Példa: INSERT INTO tDiak VALUES (7,’Nagy Júlia’, 14, 1)
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. UPDATE tDiak SET Nev=’Nagy Júlia Anna’ WHERE DAzon=7 UPDATE tDiak SET Kor=Kor+1 WHERE DAzon=2
Adatok törlése - DELETE DELETE FROM [WHERE ] Ha nincs WHERE, akkor a tábla összes rekordját töröljük. DELETE FROM tDiak WHERE DAzon=7