Services webmasters
Partenaires
Jeux concours gratuits
 
Syntaxe de INSERT DELAYED
<<<
Syntaxe de UPDATE Syntaxe de DELETE
>>>

6.4 Manipulation de données : SELECT , INSERT , UPDATE , DELETE
6 Référence du langage MySQL
 Manuel de Référence MySQL 4.1 : Version Française

Syntaxe de SELECT
Syntaxe de HANDLER
Syntaxe de INSERT
Syntaxe de INSERT DELAYED
->Syntaxe de UPDATE
Syntaxe de DELETE
Syntaxe de TRUNCATE
Syntaxe de REPLACE
Syntaxe de LOAD DATA INFILE
Syntaxe de DO

6.4.5 Syntaxe de UPDATE


UPDATE [LOW_PRIORITY] [IGNORE] nom_de_table
    SET nom_colonne1=expr1 [, nom_colonne2=expr2, ...]
    [WHERE where_definition]
    [ORDER BY ...]
    [LIMIT #]
UPDATE met à jour des enregistrements dans une tables avec de nouvelles valeurs. La clause SET indique les colonnes à modifier et les valeurs à leur donner. La clause WHERE , si fournie, spécifie les enregistrements à mettre à jour. Sinon, tous les enregistrements sont mis à jour. Si la clause ORDER BY est fournie, les enregistrements seront mis à jour dans l'ordre spécifié.

Si vous spécifiez le mot clef LOW_PRIORITY , l'exécution de l' UPDATE sera repoussé jusqu'à ce que aucun client ne lise plus de la table.

Si vous spécifiez le mot clef IGNORE , la mise à jour ne s'interrompra pas même si on rencontre des problèmes d'unicité de clefs durant l'opération. Les enregistrements posant problèmes ne seront pas mis à jour.

Si vous accédez à une colonne d'une table dans une expression, UPDATE utilisera la valeur courante de la colonne. Par exemple, la requête suivante ajoute une année à l'âge actuel de tout le monde :


mysql> UPDATE persondata SET age=age+1;
Les requêtes UPDATE sont évaluées de gauche à droite. Par exemple, la requête suivante double la valeur de la colonnes âge, puis l'incrémente :

mysql> UPDATE persondata SET age=age*2, age=age+1;
Si vous changez la valeur d'une colonne en lui spécifiant sa valeur actuelle, MySQL s'en aperçoit et ne fait pas la mise à jour. UPDATE retourne le nombre d'enregistrements ayant changé. Depuis la version 3.22 de MySQL, la fonction mysql_info() de l'API C retourne le nombre de colonnes qui correspondaient, le nombre de colonnes mises à jour et le nombre d'erreurs générées pendant l' UPDATE .

Dans la version 3.23 de MySQL, vous pouvez utilisez le code LIMIT # pour vous assurer que seul un nombre d'enregistrements bien précis est changé.

A partir de la version 4.0.4 de MySQL, vous pouvez aussi effectuer un UPDATE qui se base sur plusieurs tables :

UPDATE items,month SET items.price=month.price
WHERE items.id=month.id;

<< Syntaxe de UPDATE >>
Syntaxe de INSERT DELAYED Manipulation de données : SELECT , INSERT , UPDATE , DELETE Syntaxe de DELETE
Services webmasters
Les manuels
 
CoursPHP.com - Reproduction interdite -