SQL alapok 1. rész
Szerző: BonjaskyA következő cikkben leírom, hogy mi is az az SQL, és az alapvető parancsait példákkal együtt. A következő részekben szó lesz bonyolultabb SQL querykről, adatszerkezetekről, illetve a PHP+SQL együttes használatáról is.
Ez a cikk az SQL alapvető parancsairól szól.
Mi is az SQL?
Az SQL, azaz Structured Query Language (strukturált lekérdezőnyelv) relációsadatbázis-kezelők lekérdezési nyelve.
Tehát, az SQL képes arra, hogy nagy, relációs adatbázisokból tudjunk lekérdezni adatokat, sőt, lekérdezésen kívűl még képes:
- Adatbázis objektumok módosítása
- Adatokat módosítani a táblákban
- Táblákat létrehozni
- Táblákat törölni
- Tartalmat törölni a táblákból
Tehát láthatjuk, hogy SQL-el teljesen managelhetjük az adatainkat, tábláinkat.
Most lássuk az egyes részeket részletesebben:
Adatbázis objektumok módosítása (ALTER)
Ha adatokat akarunk módosítani, az ALTER parancsot tudjuk használni rá, mellyel a táblában egy mező típusát tudjuk megváltoztatni, a mező nevét tudjuk átírni, vagy törölni azt.
Lássunk egy egyszerű példát ALTER-re.
Szintaxis:
ALTER TABLE tabla_neve
ADD oszlop_neve adattípus;
Példa:
ALTER TABLE termekek
ADD kategoria VARCHAR(255);
A fenti példában hozzáadtunk egy kategoria nevű oszlopot a termekek táblához, aminek a típusa VARCHAR, a mérete pedig 255.
Adatok módosítása a táblákban (UPDATE)
SQL-el könnyen módosíthatunk, adatokat a táblákban a UPDATE paranccsal.Fontos megjegyezni, hogy UPDATE-vel, sorokat nem tudunk törölni, vagy hozzáadni, csak a meglévő sorokat tudjuk módosítani.
Szintaxis:
UPDATE table_neve SET oszlop_neve='uj_ertek' WHERE feltétel;
Példa:
UPDATE termekek SET kategoria='szoftverek' WHERE nev like '%Microsoft%'
Ebben a példában a termkek táblában módosítottuk a kategóriát "szoftverek"-re, minden olyan terméknél, aminek a nev mezőjében szerpel a Microsoft szó.
Táblák létrehozása (CREATE)
Adatbázis objektum létrehozására is használhatjuk az SQL-t, méghozzá a CREATE paranccsal.
Szintaxis:
CREATE tabla_neve (
oszlop1 oszlop típusa,
oszlop2 oszlop típusa,
...
);
Példa:
CREATE kategoria (
id int NOT NULL AUTO_INCREMENT,
nev VARCHAR(255),
leiras VARCHAR(255),
termekek_szama int,
PRIMARY KEY(id)
);
A példában létrehozunk egy kategoria nevű táblát, amiben a következő oszlopok vannak:
id - egy egész szám, ami az AUTO_INCREMENT-nek hála, automatikusan növekszik, amikor egy rekord beszúródik a táblába.
nev - szöveg
leiras - szöveg
termekek_szama - egész szám
A végén lévő PRIMARY KEY-el megmondjuk a táblának, hogy az id mező az egyedi kulcs, ami minden sornál más lesz, és nem vehet fel NULL értéket.
Tábla törlése(DROP)
Ha szeretnénk egy táblát a tartalmával együtt törölni, akkor használhatjuk a DROP parancsot.
Szintaxis:
DROP TABLE tabla_neve;
Példa:
DROP table kategoria;
Ebben a példában töröltük a kategoria táblát az adatbázisból, annak az összes rekordjával együtt.
Tábla kiürítése(TRUNCATE)
A TRUNCATE parancs törli az összes rekordot a táblából, de maga a tábla, és a szerkezete megmarad.
Szintaxis:
TRUNCATE TABLE tabla_neve;
Példa:
TRUNCATE TABLE termekek;
Tábla kiürítésre még használhatunk feltétel(WHERE) nélküli DELETE parancsot is.
Példa:
DELETE FROM termekek;
Mivel a fenti példában nem adtunk meg feltételt, így ha így futtatjuk, a táblából minden rekordot törlünk.
A következő SQL cikkben szó lesz róla, hogy a kettő között mi is a különbség.
Sorok törlése a táblából(DELETE)
Táblákból egyszerűen törölhetünk sorokat a DELETE paranccsal.
Szintaxis:
DELETE FROM table_neve WHERE feltétel;
Példa:
DELETE FROM kategoria WHERE nev='Szoftverek';
A fenti példában a kategoria nevű táblából töröltük a Szoftverek nevű rekordot.
A következő cikkben szó lesz róla, hogyan tudjuk együtt használni a PHP-t, és az SQL-t tartalomkezelésre.
Sorok beszúrása táblába(INSERT)
Szintaxis:
INSERT INTO tabla_neve (oszlop1, oszlop2, ...) VALUES (ertek1, ertek2, ...);
Példa:
INSERT INTO kategoria (nev, leiras, termekek_szama) VALUES ('Szoftverek', 'Operációs rendszerek', 30);
A példában a kategoria nevű táblába szúrunk be egy új rekordot, figyeljük meg, hogy bár a táblában van id nevű oszlop is, nem kell megadnunk neki értéket, mivel fentebb, AUTO_INCRAMENT tulajdonságot állítottunk be neki, így magától, midnig növeli az index számot. Valamint a példa végén található 30-at nem tettem aposztrófok közé, mivel a termekek_szama nevű oszlopnak int típust állítottam be.
A cikk folytatása: SQL alapok 2. rész - SELECT használata
2020-01-25 20:25:39