Gegevens verwijderen

Voltooid

Net zoals de insert-instructie altijd hele rijen aan een tabel toevoegt, worden met de instructie DELETE altijd hele rijen verwijderd.

Delete gebruiken om specifieke rijen te verwijderen

DELETE werkt op een set rijen, gedefinieerd door een voorwaarde in een WHERE-component of gedefinieerd in een join. De WHERE-component in een DELETE-instructie heeft dezelfde structuur als een WHERE-component in een SELECT-instructie.

Notitie

Houd er rekening mee dat een DELETE zonder een bijbehorende WHERE-component alle rijen uit een tabel verwijdert. Gebruik de DELETE-instructie met voorzichtigheid.

De volgende code toont de basissyntaxis van de DELETE-instructie:

DELETE [FROM] <TableName>
WHERE <search_conditions>;

In het volgende voorbeeld wordt de instructie DELETE gebruikt om alle producten uit de opgegeven tabel te verwijderen die zijn stopgezet. Er is een kolom in de tabel met de naam stopgezet en voor producten die niet meer beschikbaar zijn, heeft de kolom de waarde 1.

DELETE FROM Production.Product
WHERE discontinued = 1;

TRUNCATE TABLE gebruiken om alle rijen te verwijderen

MET DELETE zonder WHERE-component worden alle rijen uit een tabel verwijderd. Daarom wordt DELETE meestal voorwaardelijk gebruikt, met een filter in de WHERE-component. Als u alle rijen echt wilt verwijderen en een lege tabel wilt achterlaten, kunt u de instructie TRUNCATE TABLE gebruiken. Deze instructie staat geen WHERE-component toe en verwijdert altijd alle rijen in één bewerking. Hier volgt een voorbeeld:

TRUNCATE TABLE Sales.Sample;

TRUNCATE TABLE is efficiënter dan DELETE wanneer u alle rijen wilt verwijderen.