coincoins

SQL.LMD (Langage de modification des Données)


Les requêtes action ; delete, update, insert

DELETE FROM, UPDATE et INSERT INTO sont vachement plus simple à utiliser que SELECT !!!

Introduction
Les requêtes action sont des requêtes qui modifient le contenu de la base de données.

Les clauses sont les suivantes : supression, modification et insersion :

RôleSQL
Supprimer des enregistrements,
-> Attention, pas de champs derrière delete !
DELETE FROM `table`
WHERE … ;
Modifier des enregistrements,
-> Attention, pas de from derrière update !
UPDATE `table` 
SET attribut1=nouvelleValeur, attribut2=expression,WHERE … ;
Insérer, ajouter de nouveaux enregistrements dans une table.
Dans l'exemple, on insère 2 nouveaux enregistrements.
-> Attention, pas de where derrière insert into !
INSERT INTO `table` (Attribut1, Attribut2, Attribut3,)
VALUES 
( valeurAttribut1, valeurAttribut2, valeurAttribut3,),
( valeurAttribut1, valeurAttribut2, valeurAttribut3,);

Dans la requête INSERT INTO, il est possible d'indiquer la liste des attributs à remplir si on ne dispose pas de toutes les valeurs.

2. Exemples :

Rédiger les requêtes suivantes

  1. Supprimer les articles qui contiennent les lettres "an" dans la désignation (on écrira descArt LIKE "%an%").
  2. L'article "Bouée" a été valorisé à 45€ par erreur. Son prix doit être de 145€
  3. Ajouter le nouvel article produit fini (type="F") A5 : "Taquet" , au prix de 14,34€ dans la table Article.

Attention, la virgule décimale (,) dans les nombres est notée par un point (.), comme en anglais.

Les requêtes SQL correspondantes sont les suivantes :

  1. DELETE FROM Article WHERE descArt LIKE "%an%" ;
  2. UPDATE Article SET prixHtArt=145 WHERE artDesc="Bouée" ;
  3. INSERT INTO Article (refArt, descArt, prixHtArt, typeArt) VALUES ("A5", "Taquet", 14.34, "F") ;

Noter que le taquet aura un poids de 0 car il n'a pas été renseigné. si on n'avait pas indiqué les champs, il aurait fallu lui donner une valeur. Les valeurs DOIVENT être dans le même ordre que les champs.