Rekord törlése SQL adatbázis táblájából: DELETE utasítás példákkal
Ez előző leckében az SQL UPDATE utasítással foglalkoztunk, mely lehetővé teszi, hogy az adatbázistábla rekordjait módosítsuk, frissítsük. Ebben a leckében pedig a DELETE utasítást fogjuk megvizsgálni, amellyel ugyanolyan körültekintően kell bánni, mint az UPDATE utasítással.
A DELETE utasítás
Az SQL DELETE utasításával adatbázistáblák rekordjait tudjuk törölni. A törlendő rekordokat a WHERE feltétellel kell meghatározni. Pontosan emiatt kell nagyon körültekintően meghatározni a WHERE feltételt, hiszen egy óvatlan megválasztott feltétellel olyan rekordokat is törölhetünk, amelyeket alapvetően nem szerettünk volna.
SQL DELETE szintaxis
A DELETE FROM kulcsszó után meg kell adni azt a táblát, amelyből rekordokat szeretnénk törölni, majd egy olyan feltételt kell meghatározni, amely csak a törlendő rekordok esetében teljesül. A WHERE feltétel meghatározásával nagyon óvatosnak kell lennie, hiszen, ha a feltétel nincs elég pontosan megfogalmazva, akkor olyan rekordok is törlődhetnek, amelyeket nem szerettünk volna törölni.
DELETE FROM tábla
WHERE feltétel;
Code language: SQL (Structured Query Language) (sql)
Az alábbi szintaxist használva a tábla minden rekordja törlődik.
DELETE FROM tábla;
Code language: SQL (Structured Query Language) (sql)
SQL DELETE példák
Az elkövetkezendő példákat a lent látható „vasarlok” táblán fogjuk bemutatni.
vasarlok tábla
vezeteknev | keresztnev | lakhely | szuletesi_ev |
---|---|---|---|
Horváth | Tamás | Budapest | 1989 |
Lakatos | Dezső | Debrecen | 1961 |
Losonczi | Léna | Nyíregyháza | 2005 |
Balogh | Beatrix | Miskolc | 1985 |
Kovács | István | Budapest | 1957 |
Lakatos | Boldizsár | Debrecen | 2009 |
Példa #1
Feladat: Töröljük az 1989-ben született budapesti lakos, Horváth Tamás rekordját.
SQL lekérdezés
DELETE FROM vasarlok
WHERE vezeteknev="Horváth" AND keresztnev="Tamás" AND lakhely="Budapest" AND szuletesi_ev=1989;
Code language: SQL (Structured Query Language) (sql)
Eredmény
vasarlok tábla
vezeteknev | keresztnev | lakhely | szuletesi_ev |
---|---|---|---|
Lakatos | Dezső | Debrecen | 1961 |
Losonczi | Léna | Nyíregyháza | 2005 |
Balogh | Beatrix | Miskolc | 1985 |
Kovács | István | Budapest | 1957 |
Lakatos | Boldizsár | Debrecen | 2009 |
Példa #2
Feladat: Töröljük a „vasarlok” tábla összes rekordját.
SQL lekérdezés
DELETE FROM vasarlok;
Code language: SQL (Structured Query Language) (sql)
Eredmény
vasarlok tábla
vezeteknev | keresztnev | lakhely | szuletesi_ev |
---|
Magyarázat: Ha nem adunk meg WHERE feltételt, akkor a tábla összes rekordja törlődik.