Skapar en borttagningsfråga som tar bort poster från en eller flera av tabellerna i FROM-satsen som uppfyller WHERE-satsen.
Syntax
DELETE [table.*]
Tabellen FRÅN
WHERE-villkoret
DELETE-instruktionen består av följande element:
| Element | Beskrivning |
|---|---|
| tabell | Det frivilliga namnet på den tabell från vilken posterna ska tas bort. |
| tabell | Namnet på den tabell från vilken posterna ska tas bort. |
| villkor | Ett uttryck som anger vilka poster som ska tas bort. |
Kommentarer
DELETE är särskilt användbart när du vill ta bort många poster.
Om du vill ta bort en hel tabell från databasen kan du använda en körmetod med en DROP-instruktion Observera att strukturen går förlorad om du tar bort tabellen. Om du däremot använder DELETE tas endast data bort. Tabellens struktur och alla tabellegenskaper, till exempel fältattribut och index, förblir intakta.
Du kan använda DELETE för att ta bort poster från tabeller som har en 1:N-relation med andra tabeller. Sammanhängande borttagningsåtgärder gör att poster i de tabeller som är på många-sidan i relationen tas bort när motsvarande post på en-sidan tas bort i frågan. I relationen mellan tabellerna Kunder och Order är tabellen Kunder exempelvis på en-sidan och tabellen Order på många-sidan i relationen. Om du tar bort en post i Kunder tas motsvarande poster bort i Order om sammanhängande borttagning har specificerats.
En borttagningsfråga tar bort hela poster, inte bara data i vissa fält. Om du vill ta bort värdena i ett visst fält skapar du en uppdateringsfråga som ändrar värdena till Null.
Viktigt!
- När du har tagit bort poster med en borttagningsfråga kan du inte ångra åtgärden. Om du vill veta vilka poster som tas bort kan du först undersöka resultatet av en urvalsfråga med samma villkor och sedan köra borttagningsfrågan.
- Se till att alltid ha säkerhetskopior av dina data. Om du tar bort fel poster kan du hämta dem från dina säkerhetskopior.