Suppression de données

Suppression de données

8 May 2021

Dans le processus de gestion de données, il est évidemment possible de supprimer des données d'une table si besoin.

Supprimer des données

DELETE FROM ma_table WHERE id = 12

Dans cet exemple, je supprime l'enregistrement ayant l'ID numéro 12 dans ma table.
Si cet ID n'existe pas, SQL ne me retournera aucune erreur.

DELETE FROM ma_table WHERE city = 'Paris'

Dans cet exemple, je supprime tous les enregistrements dans lesquels la colonne city est égale à Paris.

Attention ! Si vous ne mettez pas la condition WHERE, tous les enregistrements de la table seront supprimés, sans possibilité de retour en arrière.

Supprimer toutes les données

Si vous désirez supprimer toutes les données, je vous conseille d'utiliser la commande TRUNCATE :

TRUNCATE TABLE ma_table

Cependant, la commande DELETE sans condition WHERE aura le même résultat.

Je ne comprends pas, quelle est la différence ?

La différence réside dans la réinitialisation de l'ID.
La commande TRUNCATE réinitialise l'auto-incrément de l'ID, si la table en possède un, tandis que la commande DELETE ne réinitialise pas l'auto-incrément.