Maison >base de données >tutoriel mysql >Comment insérer ou mettre à jour correctement des données dans MySQL à l'aide des clauses INSERT et WHERE ?

Comment insérer ou mettre à jour correctement des données dans MySQL à l'aide des clauses INSERT et WHERE ?

Susan Sarandon
Susan Sarandonoriginal
2025-01-19 06:45:10178parcourir

How to Correctly Insert or Update Data in MySQL Using INSERT and WHERE Clauses?

Insertion et mise à jour des données MySQL : Utilisation correcte des clauses INSERT et WHERE

L'instruction INSERT de MySQL ne prend pas en charge la clause WHERE. Par conséquent, la requête suivante :

<code class="language-sql">INSERT INTO Users( weight, desiredWeight ) VALUES ( 160, 145 ) WHERE id = 1;</code>

échouera.

Insérer une nouvelle ligne

Si vous essayez d'insérer une nouvelle ligne avec l'ID 1, utilisez la requête suivante :

<code class="language-sql">INSERT INTO Users(id, weight, desiredWeight) VALUES(1, 160, 145);</code>

Mettre à jour la ligne existante

Si vous souhaitez modifier la valeur weight/desiredWeight d'une ligne existante avec l'ID 1, utilisez l'instruction UPDATE :

<code class="language-sql">UPDATE Users SET weight = 160, desiredWeight = 145 WHERE id = 1;</code>

INSERT ... ON DUPLICATE KEYGrammaire

Vous pouvez également utiliser la syntaxe INSERT ... ON DUPLICATE KEY :

<code class="language-sql">INSERT INTO Users (id, weight, desiredWeight) VALUES(1, 160, 145) ON DUPLICATE KEY UPDATE weight=160, desiredWeight=145;</code>

ou :

<code class="language-sql">INSERT INTO Users SET id=1, weight=160, desiredWeight=145 ON DUPLICATE KEY UPDATE weight=160, desiredWeight=145;</code>

Colonne auto-ajoutée

Si la colonne id est une colonne à incrémentation automatique, vous pouvez complètement omettre la colonne INSERT dans la requête : id

<code class="language-sql">INSERT INTO Users( weight, desiredWeight ) VALUES ( 160, 145 );</code>
MySQL incrémentera automatiquement la valeur

. id

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn