SQL - Mise à jour d'informations


Le SQL permet la modification d'une table par un utilisateur (pour peu qu'il ait les droits suffisants...). La modification d'une table consiste à:
  • ajouter des tuples
  • modifier des tuples existants
  • ou bien supprimer des tuples

 

Insertion de données

L'insertion de nouvelles données dans une table se fait grâce à l'ordre INSERT, qui permet d'insérer de nouvelles lignes dans la table. L'ordre INSERT attend la clause INTO, suivie du nom de la table, ainsi que du nom de chacune des colonnes entre parenthèses (les colonnes omises prendront la valeur NULL par défaut).

Les valeurs à insérer peuvent être précisées de deux façons :

  • avec la clause VALUES: une seule ligne est insérée, elle contient comme valeurs, l'ensemble des valeurs passées en paramètre dans la parenthèse qui suit la clause VALUES. Les données sont affectées aux colonnes dans l'ordre dans lequel les colonnes ont été déclarées dans la clause INTO


INSERT INTO Nom_de_la_table(colonne1,colonne2,colonne3,...)
VALUES (Valeur1,Valeur2,Valeur3,...)


Lorsque chaque colonne de la table est modifiée, l'énumération de l'ensemble des colonnes est
facultatif. Lorsque les valeurs sont des chaînes de caractères, il ne faut pas omettre de les
délimiter par des guillemets.
  • avec la clause SELECT: plusieurs lignes peuvent être insérées, elle contiennent comme valeurs, l'ensemble des valeurs découlant de la sélection. Les données sont affectées aux colonnes dans l'ordre dans lequel les colonnes ont été déclarées dans la clause INTO


INSERT INTO Nom_de_la_table(colonne1,colonne2,...)
SELECT colonne1,colonne2,... FROM Nom_de_la_table2
WHERE qualification


Lorsque l'on remplace un nom de colonne suivant la clause SELECT par une constante, sa valeur est affectée par défaut aux tuples. Il n'est pas possible de sélectionner des tuples dans la table dans laquelle on insère des lignes (en d'autres termes Nom_de_la_table doit être différent de Nom_de_la_table2)
 

Modification de données

La modification de données (aussi appelée mise à jour) consiste à modifier des tuples (des lignes) dans une table grâce à l'ordre UPDATE. La modification à effectuer est précisée après la clause SET. Il s'agit d'une affectation d'une valeur à une colonne grâce à l'opérateur = suivi d'une expression algèbrique, d'une constante ou du résultat provenant d'une clause SELECT. La clause WHERE permet de préciser les tuples sur lesquels la mise à jour aura lieu

UPDATE Nom_de_la_table
SET Colonne = Valeur_Ou_Expression
WHERE qualification

 

Suppression de données

La suppression de données dans une table se fait grâce à l'ordre DELETE. Celui-ci est suivi de la clause FROM, précisant la table sur laquelle la suppression s'effectue, puis d'une clause WHERE qui décrit la qualification, c'est-à-dire l'ensemble des lignes qui seront supprimées.

DELETE FROM Nom_de_la_table
WHERE qualification


L'ordre DELETE est à utiliser avec précaution car l'opération de suppression est irréversible. Il faudra donc s'assurer dans un premier temps que les lignes sélectionnées sont bien les lignes que l'on désire supprimer!

Lorsque plusieurs tables sont associées (une même colonne présente dans chacune des tables) il est nécessaire d'être prudent lors des suppressions. Il est ainsi recommandé de commencer par supprimer les tuples de la table secondaire puis remonter vers la table principale (suppression en cascade ascendante).

Réalisé sous la direction de , fondateur de CommentCaMarche.net.

Ce document intitulé «  SQL - Mise à jour d'informations  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.