Instruction UPDATE
L'instruction UPDATE
permet de modifier les enregistrements d'une table de base de données. La syntaxe de l'instruction UPDATE
est la suivante :
UPDATE nom_table SET nom_col = expr, ... [ WHERE { conditions } ]
nom_col
est le nom d'une colonne dont la valeur doit être modifiée. Vous pouvez modifier plusieurs colonnes dans la même instruction.
expr
est la nouvelle valeur de la colonne.
Généralement, les expressions sont les valeurs constantes des colonnes (mais il peut également s'agir d'une sous-requête). Les valeurs de type chaîne de caractères doivent être placées entre guillemets simples ('). Pour inclure un guillemet simple (correspondant à une apostrophe) dans une valeur de type chaîne de caractères placée entre guillemets simples, utilisez deux guillemets simples consécutifs (par exemple 'L''instance'
).
Les sous-requêtes doivent être entre parenthèses.
La clause WHERE
peut être toute clause valide. Elle détermine les enregistrements à modifier.
Appliquer l'instruction UPDATE
à la table emp.
UPDATE emp SET salaire=32000, exempt=1 WHERE id_emp = 'E10001'
Cette instruction UPDATE
a pour effet de modifier chaque enregistrement réunissant les conditions définies dans la clause WHERE
. Ici, il s'agit de changer le salaire et le statut d'exemption pour tous les employés dont l'ID est E10001
. Les ID des employés étant uniques dans la table Employés, un seul enregistrement est mis à jour.
Appliquer l'instruction UPDATE
à la table emp avec une sous-requête.
UPDATE emp SET salaire = (SELECT avg(salaire) from emp) WHERE id_emp = 'E10001'
Ici, le salaire dont l'ID d'employé est E10001
est remplacé par le salaire moyen de la société.
Dans les types de données de conteneur, vous ne pouvez utiliser UPDATE
qu'avec du texte, à moins de préparer une déclaration paramétrée et de générer le flux de données depuis votre application. Pour utiliser des données binaires, vous pouvez simplement assigner le nom de fichier en l'insérant entre des guillemets simples ou utiliser la fonction PutAs()
. Lorsque vous spécifiez un nom de fichier, le type de fichier est déduit de l'extension de fichier :
UPDATE nom_table SET (nom_conteneur) = ? AS 'nomfichier.extension fichier'
Les types de fichiers non pris en charge seront insérés en tant que type FILE.
Lorsque vous utilisez la fonction PutAs()
, indiquez le type : PutAs(col, 'type')
, où la valeur du type est un type de fichier pris en charge comme décrit dans la section Récupération du contenu d'une rubrique Conteneur : fonctions CAST() et GetAs().