logo

SQL DELETE-instructie

De SQL DELETE-instructie wordt gebruikt om specifieke rijen uit een tabel te verwijderen terwijl de tabelstructuur intact blijft. Het verschilt van DROP, waarbij de hele tabel wordt verwijderd.

Java vervangt alles
  • Het verwijdert rijen op basis van voorwaarden.
  • Behoudt tabelschemabeperkingen en indexen.
  • Kan een enkele rij of alle rijen verwijderen.

Voorbeeld: Eerst zullen we dat doen creëren een demo SQL-database en -tabel waarop we de SQL DELETE-opdracht zullen gebruiken.

Van de' title=

Vraag:



DELETE FROM Employees  
WHERE EmployeeID = 5;

Uitgang:

Verwijderde rij-' loading='lazy' title=
  • Met deze query wordt de rij verwijderd uit de tabel Werknemers waarbij de EmployeeID 5 is.
  • Alleen dat specifieke record wordt verwijderd; alle andere rijen blijven ongewijzigd.

Syntaxis:

DELETE FROM table_name   
WHERE some_condition;
  • Sommige_conditie: Een voorwaarde die wordt gebruikt om de rijen te filteren die u wilt verwijderen.
  • tabelnaam: De naam van de tabel waaruit u de rijen wilt verwijderen.

Opmerking: We kunnen enkele of meerdere records verwijderen met behulp van de WHERE-clausule; als dit wordt weggelaten, worden alle records in de tabel verwijderd.

Voorbeelden van SQL DELETE-instructie

Stel dat we in SQL een tabel hebben gemaakt met de naam GFG_Employee, die de persoonlijke gegevens van de werknemer bevat, inclusief de ID-naam, e-mailadres en afdeling enz., zoals hieronder weergegeven.

MAAK TABEL GFG_Employees (
id INT PRIMAIRE SLEUTEL
naam VARCHAR (20)
e-mail VARCHAR (25)
afdeling VARCHAR(20)
);

INSERT INTO GFG_Employees (ID-naam e-mailafdeling) WAARDEN
(1 'Jessie' '[email protected]' 'Ontwikkeling')
(2 'Praveen' '[email protected]' 'HR')
(3 'Kan' '[email protected]' 'Verkoop')
(4 'Rithvik' '[email protected]' 'IT')
(5 'Suraj' '[email protected]' 'Kwaliteitsborging')
(6 'Om' '[email protected]' 'IT')
(7 'Naruto' '[email protected]' 'Ontwikkeling');

Selecteer * Van GFG_Employees

Uitgang:

verschil tussen array en arraylist
GFG_werknemer' loading='lazy' title=

Voorbeeld 1: Eén record verwijderen

We kunnen de DELETE-instructie met een voorwaarde gebruiken om een ​​specifieke rij uit een tabel te verwijderen. De WAAR -clausule zorgt ervoor dat alleen het bedoelde record wordt verwijderd. We kunnen de records met de naam Rithvik verwijderen met behulp van de onderstaande query:

Vraag:

DELETE FROM GFG_Employees   
WHERE NAME = 'Rithvik';

Uitgang:

verwijderde-info' loading='lazy' title=

Voorbeeld 2: Meerdere records verwijderen

Om meerdere records te verwijderen, kunt u een voorwaarde opgeven die aan meerdere rijen voldoet. Laten we de rijen verwijderen uit de tabel  GFG_Employees waarbij de afdeling 'Ontwikkeling' is. Hierdoor worden twee rijen verwijderd (de eerste rij en de zevende rij).

Vraag:

DELETE FROM GFG_Employees   
WHERE department = 'Development';

Uitvoer

afdeling' loading='lazy' title=

Voorbeeld 3: verwijder alle records uit een tabel

Als we alle records uit de tabel moeten verwijderen, kunnen we de WHERE-clausule weglaten of als alternatief de DELETE-instructie gebruiken met een asterisk (*) om alle rijen aan te duiden.

Vraag:

DELETE FROM GFG_Employees;  
Or
DELETE * FROM GFG_Employees;

Uitgang:

leeg' loading='lazy' title=

Alle records in de tabel worden verwijderd. Er zijn geen records meer om weer te geven. De tabel GFG_Employees  wordt leeg.

DELETE-bewerkingen ongedaan maken

Omdat de DELETE-instructie een DML-bewerking is, kan deze worden teruggedraaid wanneer deze in een instructie wordt uitgevoerd. Als u per ongeluk records verwijdert of het proces moet herhalen, kunt u de ROLLBACK commando.

sterpatroon afdrukken

Vraag:

START TRANSACTION;  
DELETE FROM GFG_Employees WHERE department = 'Development';
-- If needed you can rollback the deletion
ROLLBACK;

Uitleg: Het ROLLBACK-commando maakt de wijzigingen ongedaan die door de DELETE-instructie zijn aangebracht, waardoor de records die tijdens de transactie zijn verwijderd effectief worden hersteld.

Quiz maken