Egy törlő lekérdezés létrehozása, amely eltávolítja a rekordokat a WHERE záradékot teljesítő FROM záradékban felsorolt egy vagy több táblából.
Szintaxis
DELETE [tábla.*]
FROM tábla
WHERE feltételek
A DELETE utasítás az alábbi részekből áll:
Rész |
Leírás |
tábla |
Annak a táblának a választható neve, amelyből a rekordokat törli. |
tábla |
Annak a táblának a neve, amelyből a rekordokat törli. |
feltétel |
A törlendő rekordokat meghatározó kifejezés. |
Megjegyzések
A DELETE utasítás különösen hasznos, amikor sok rekordot szeretne törölni.
Ha egy teljes táblát szeretne törölni az adatbázisból, használhatja az Execute metódust egy DROP utasítással. A tábla törlésekor azonban elvész a struktúra. Ezzel ellentétben, a DELETE használata esetén csak az adatokat törli; a táblastruktúra és az összes táblatulajdonság, többek között a mezőattribútumok és az indexek érintetlenek maradnak.
A DELETE utasítással eltávolíthatja az adatokat a többi táblával egy-a-többhöz kapcsolatban lévő táblákból. A kaszkádolt törlési műveletek törlik a rekordokat azokból a táblákból, amelyben ugyanahhoz a kulcsértékhez több rekord tartozik, amikor a kapcsolat „egy” oldalán lévő megfelelő rekordot törlik a lekérdezésből. A Vevők és a Rendelések tábla közötti kapcsolatban például a Vevők tábla a kapcsolat „egy” oldalán, a Rendelések tábla pedig a „több” oldalán van. Ha a kaszkádolt törlési lehetőség megadása esetén töröl egy rekordot a Vevők táblából, a Rendelések táblából is törli a megfelelő rekordot.
A törlő lekérdezések nem csak adott mezők adatait, hanem teljes rekordokat törölnek. Ha adott mezőben lévő adatokat szeretne törölni, hozzon létre egy frissítő lekérdezést, amely Null értékre módosítja az értékeket.
Fontos:
-
Miután egy törlő lekérdezéssel eltávolított rekordokat, a művelet nem vonható vissza. Ha meg szeretné tudni, hogy mely rekordokat törölte, először vizsgálja meg egy, az ugyanazon feltételt használó választó lekérdezés eredményét, majd futtassa a törlő lekérdezést.
-
Mindig őrizzen meg biztonsági másolatot az adatairól. Ha törli a nem megfelelő rekordokat, visszaállíthatja őket a biztonsági másolatokból.