Oppretter en slettespørring som fjerner poster fra én eller flere tabeller som er oppført i setningsdelen FROM, som oppfyller setningsdelen WHERE.
Syntaks
DELETE [tabell.*]
FROM-tabell
WHERE-vilkår
Uttrykket DELETE har følgende deler:
Del |
Beskrivelse |
tabell |
Det valgfrie navnet på tabellen som postene er slettet fra. |
tabell |
Navnet på tabellen som postene er slettet fra. |
vilkår |
Et uttrykk som fastslår hvilke poster som skal slettes. |
Kommentarer
DELETE er spesielt nyttig når du ønsker å slette mange poster.
Hvis du vil fjerne en hel tabell fra databasen, kan du bruke execute-metoden med en DROP-setning. Hvis du imidlertid sletter tabellen, går strukturen tapt. Når du derimot bruker DELETE, slettes bare dataene. tabellstrukturen og alle tabellegenskapene, for eksempel feltattributter og indekser, forblir intakte.
Du kan bruke DELETE til å fjerne poster fra tabeller som er i en én-til-mange-relasjon med andre tabeller. Gjennomgripende slettingsoperasjoner gjør at tabeller som er på mange-siden av relasjonen slettes, når den tilsvarende posten på én-siden av relasjonen slettes i spørringen. Eksempel: I relasjonen mellom tabellene Kunder og Ordre er tabellen Kunder på én-siden og tabellen Ordre er på mange-siden av relasjonen. Hvis du sletter en post fra tabellen Kunder, kan det resultere i at tilsvarende Ordre-poster slettes hvis alternativet om gjennomgripende sletting er angitt.
En slettespørring sletter hele poster, ikke bare dataene i bestemte felt. Hvis du ønsker å slette verdier i bestemte felt, oppretter du en opppdateringsspørring som endrer verdiene til Null.
Viktig!:
-
Etter at du fjerner poster ved hjelp av en slettespørring, kan du ikke angre operasjonen. Hvis du vil vite hvilke poster som ble slettet, må du først undersøke resultatene av en utvalgsspørring som bruker de samme vilkårene, og deretter kjøre slettespørringen.
-
Oppretthold sikkerhetskopier av dataene dine til enhver tid. Hvis du sletter feil poster, kan du hente dem fra sikkerhetskopiene.