Video: Mikko Hypponen: Fighting viruses, defending the net 2024
När tiden går, kan data bli gamla och förlora sin användbarhet. Du kanske vill ta bort denna föråldrade data från dess SQL-tabell. Onödig data i en tabell saktar prestanda, förbrukar minne och kan förvirra användare. Du kanske vill överföra äldre data till ett arkivbord och sedan ta arkivet offline. I det osannolika fallet att du någonsin behöver den data igen kan du återställa den.
Under tiden minskar inte din dagliga bearbetning. Oavsett om du bestämmer dig för att föråldrade data är värda att arkivera, så kommer du så småningom till den punkt där du vill radera den data. SQL tillhandahåller avlägsnande av rader från databastabeller med hjälp av DELETE-satsen.
Du kan radera alla rader i en tabell med ett okvalificerat DELETE-uttalande, eller du kan begränsa raderingen till endast valda rader genom att lägga till en WHERE-klausul. Syntaxen liknar syntaxen i ett SELECT-uttalande, förutom att du inte anger kolumner. Om du vill ta bort en tabellrad, vill du förmodligen ta bort all data i kolumnerna i den raden.
Antag exempelvis att din kund, David Taylor, bara flyttat till Schweiz och kommer inte att köpa något längre från dig. Du kan ta bort honom från din KUND-tabell med hjälp av följande uttalande:
Ta bort från kund där FirstName = 'David' OCH LastName = 'Taylor';
Förutsatt att du bara har en kund med namnet David Taylor, gör det här uttalandet den avsedda raderingen. Om du har två eller flera kunder som delar namnet David Taylor, kan du lägga till fler villkor i WHERE-klausulen för att se till att du bara tar bort den kund du vill ta bort. Om du inte lägger till en WHERE-klausul, kommer alla kunder som heter David Taylor att raderas.