IV.3. Le langage de manipulation des données
(LMD)
Le langage de manipulation de données (LMD, ou Data
Manipulation Language, soit DML en anglais) est l'ensemble des commandes
concernant la manipulation des données dans une base de données.
Le LMD permet l'ajout, la suppression et la modification de lignes, la
visualisation du contenu des tables et leur verrouillage [30].
Les instructions du LMD sont : INSERT, UPDATE, DELETE, SELECT,
EXPLAIN, PLAN, LOCK TABLE.
Ces éléments doivent être validés par
une transaction pour qu'ils soient pris en compte.
IV.3.1. Insertion de n-uplets : INSERT INTO
La commande INSERT permet d'insérer une ligne dans une
table en spécifiant les valeurs à insérer.
La syntaxe est la suivante :
INSERT INTO nom_table(nom_col_1, nom_col_2, ...) VALUES (val_1,
val_2, ...)
La liste des noms de colonne est optionnelle. Si elle est
omise, la liste des colonnes sera par défaut la liste de l'ensemble des
colonnes de la table dans l'ordre de la création de la table. Si une
liste de colonnes est spécifiée, les colonnes ne figurant pas
dans la liste auront la valeur NULL.
72
Il est possible d'insérer dans une table des lignes
provenant d'une autre table. La syntaxe est
la suivante :
INSERT INTO nom_table(nom_col1, nom_col2, ...)
SELECT ...
L'instruction SELECT sera développer dans les sections
suivantes surtout avec la partie LCD.
IV.3.2. Modification de n-uplets : UPDATE
La commande UPDATE permet de modifier les valeurs d'une ou
plusieurs colonnes, dans une ou plusieurs lignes existantes d'une table. La
syntaxe est la suivante :
UPDATE nom_table
SET nom_col_1 = {expression_1 | ( SELECT ...) }, nom_col_2 =
{expression_2 | ( SELECT ...) },
...
nom_col_n = {expression_n | ( SELECT ...) } WHERE predicat
Les valeurs des colonnes nom_col_1, nom_col_2, ..., nom_col_n
sont modifiées dans toutes les lignes qui satisfont le prédicat.
En l'absence d'une clause WHERE, toutes les lignes sont mises à jour.
Les expressions expression_1, expression_2, ..., expression_n peuvent faire
référence aux anciennes valeurs de la ligne.
IV.3.3. Suppression de n-uplets : DELETE
La commande DELETE permet de supprimer des lignes d'une table. La
syntaxe est la suivante :
DELETE FROM nom_table WHERE predicat
Toutes les lignes pour lesquelles predicat est
évalué à vrai sont supprimées. En l'absence de
clause WHERE, toutes les lignes de la table sont supprimées.
|