MySQL DELETE-query: een rij uit een tabel verwijderen

Wat is de DELETE-query?

MySQL Verwijder commando wordt gebruikt om rijen die niet langer nodig zijn uit de databasetabellen te verwijderen. Het verwijdert de hele rij uit de tabel en retourneert het aantal verwijderde rijen. De verwijderopdracht is handig om tijdelijke of verouderde gegevens uit uw database te verwijderen.

De verwijderquery in MySQL kan meer dan één rij uit een tabel verwijderen in één query. Dit blijkt voordelen te hebben bij het verwijderen van grote aantallen rijen uit een databasetabel.

Eenmaal een rij Verwijderen in MySQL rij is verwijderd, kan deze niet worden hersteld. Het wordt daarom sterk aanbevolen om databaseback-ups te maken voordat u gegevens uit de database verwijdert. Hiermee kunt u de database herstellen en de gegevens later bekijken als dat nodig is.

Hoe een rij te verwijderen in MySQL

Om een ​​rij te verwijderen in MySQL, wordt de DELETE FROM-instructie gebruikt:

DELETE FROM `table_name` [WHERE condition];

HIER

  • DELETE FROM `tabelnaam` vertelt MySQL server om rijen uit de tabel te verwijderen ..
  • [WHERE-voorwaarde] is optioneel en wordt gebruikt om een ​​filter te plaatsen dat het aantal rijen beperkt dat wordt beïnvloed door de DELETE-syntaxis MySQL rij vraag.

Indien de WHERE-clausule wordt niet gebruikt in de MySQL VERWIJDER vraag, dan worden alle rijen in een bepaalde tabel verwijderd.

Voorbeeld MySQL Vraag verwijderen

Voordat we dieper ingaan op de SQL DELETE-instructie, gaan we eerst wat voorbeeldgegevens in de filmtabel invoegen om mee te werken.

INSERT INTO  `movies` (`title`, `director`, `year_released`, `category_id`) VALUES ('The Great Dictator', 'Chalie Chaplie', 1920, 7);
INSERT INTO `movies` (`title`, `director`, `category_id`) VALUES ('sample movie', 'Anonymous', 8);
INSERT INTO  movies (`title`, `director`, `year_released`, `category_id`) VALUES ('movie 3', 'John Brown', 1920, 8);

Door het bovenstaande script uit te voeren, worden drie (3) films aan de filmtabel toegevoegd. Voordat we verder gaan met onze les, laten we eerst alle films in onze tabel zetten. Het onderstaande script doet dat.

SELECT * FROM `movies`;

Als u bovenstaand script uitvoert, krijgt u de volgende resultaten.

movie_id title director year_released category_id
1 Pirates of the Caribean 4 Rob Marshall 2011 1
2 Forgetting Sarah Marshal Nicholas Stoller 2008 2
3 X-Men NULL 2008 NULL
4 Code Name Black Edgar Jimz 2010 NULL
5 Daddy's Little Girls NULL 2007 8
6 Angels and Demons NULL 2007 6
7 Davinci Code NULL 2007 6
9 Honey mooners John Schultz 2005 8
16 67% Guilty NULL 2012 NULL
18 The Great Dictator Chalie Chaplie 1920 7
19 sample movie Anonymous NULL 8
20 movie 3 John Brown 1920 8

Stel dat de videotheek Myflix “De Grote Dictator” niet langer aan haar leden wil verhuren en deze uit de database wil verwijderen. De film-ID is 18. We kunnen het onderstaande script gebruiken om de rij uit de tabel te verwijderen MySQL voorbeeld.

DELETE FROM `movies` WHERE `movie_id` = 18;

Voer het bovenstaande script uit in MySQL Werkbank tegen de Myflix verwijdert de film met id 18 uit de databasetabel.

Laten we de huidige status van de filmtabel bekijken.

SELECT * FROM `movies`;
movie_id title director year_released category_id
1 Pirates of the Caribean 4 Rob Marshall 2011 1
2 Forgetting Sarah Marshal Nicholas Stoller 2008 2
3 X-Men NULL 2008 NULL
4 Code Name Black Edgar Jimz 2010 NULL
5 Daddy's Little Girls NULL 2007 8
6 Angels and Demons NULL 2007 6
7 Davinci Code NULL 2007 6
9 Honey mooners John Schultz 2005 8
16 67% Guilty NULL 2012 NULL
19 sample movie Anonymous NULL 8
20 movie 3 John Brown 1920 8

NOTITIE:

  • de film met id 18 is niet teruggekeerd in de queryresultatenset.
  • u kunt geen enkele kolom voor een tabel verwijderen. U kunt een hele rij verwijderen.

Laten we zeggen dat we een lijst hebben met films die we willen verwijderen. We kunnen de WHERE-clausule samen met IN gebruiken.

DELETE FROM `movies` WHERE `movie_id`  IN (20,21);

Als u het bovenstaande script uitvoert, worden films met ID's 20 en 21 uit onze filmtabel verwijderd.

Samenvatting

  • Het commando Verwijderen in MySQL, wordt gebruikt om gegevens die niet langer nodig zijn uit een tabel te verwijderen.
  • De “WHERE-clausule” wordt gebruikt om het aantal rijen te beperken dat wordt beïnvloed door de DELETE-query MySQL opdracht.
  • Zodra gegevens zijn verwijderd, kunnen deze niet meer worden hersteld. Daarom raden wij u ten zeerste aan om een ​​back-up te maken voordat u gegevens verwijdert.