Mise à jour UPDATE de MySQL
Si nous devons modifier ou mettre à jour des données dans MySQL, nous pouvons utiliser la commandeUPDATE.
Syntaxe
Voici la syntaxe SQL générale de la commande UPDATE pour modifier des données dans les tables MySQL :
UPDATE table_name SET column1 = value1, column2 = value2, ... WHERE condition;
Description du paramètre :
table_nameest le nom de la table dans laquelle vous souhaitez mettre à jour des données.column1,column2, ... sont les noms des colonnes que vous souhaitez mettre à jour.value1,value2, ... sont les nouvelles valeurs utilisées pour remplacer les anciennes valeurs.WHERE conditionest une clause facultative utilisée pour spécifier les lignes à mettre à jour. Si laWHEREclause est omise, toutes les lignes de la table seront mises à jour.
Remarques supplémentaires :
- Vous pouvez mettre à jour un ou plusieurs champs en même temps.
- Vous pouvez spécifier n'importe quelle condition dans la clause WHERE.
- Vous pouvez mettre à jour des données dans une seule table en même temps.
La clause WHERE est très utile lorsque vous devez mettre à jour des données pour des lignes spécifiées dans une table de données.
Exemples
Les exemples suivants montrent comment utiliser l'instruction UPDATE.
1. Mettre à jour la valeur d'une seule colonne :
UPDATE employees SET salary = 60000 WHERE employee_id = 101;
2. Mettre à jour les valeurs de plusieurs colonnes :
UPDATE orders SET status = 'Shipped', ship_date = '2023-03-01' WHERE order_id = 1001;
3. Mettre à jour des valeurs à l'aide d'expressions :
UPDATE products SET price = price * 1.1 WHERE category = 'Electronics';
L'instruction SQL ci-dessus augmente de 10 % le prix de chaque produit de la catégorie 'Electronics'.
4. Mettre à jour toutes les lignes qui remplissent la condition :
UPDATE students SET status = 'Graduated';
L'instruction SQL ci-dessus met à jour le statut de tous les étudiants en 'Graduated'.
5. Mettre à jour des valeurs à l'aide d'une sous-requête :
UPDATE customers
SET total_purchases = (
SELECT SUM(amount)
FROM orders
WHERE orders.customer_id = customers.customer_id
)
WHERE customer_type = 'Premium';L'instruction SQL ci-dessus utilise une sous-requête pour calculer le montant total des achats de chaque client de type 'Premium', et met à jour cette valeur dans la colonne total_purchases.
Remarque :Lorsque vous utilisez l'instruction UPDATE, assurez-vous de fournir suffisamment de conditions pour garantir que seules les lignes que vous souhaitez mettre à jour sont modifiées. Si vous ne fournissez pas de clause WHERE, toutes les lignes de la table seront mises à jour, ce qui peut entraîner des résultats imprévisibles.
Mettre à jour des données via l'invite de commandes
Ci-dessous, nous utiliserons la clause WHERE dans la commande UPDATE pour mettre à jour les données spécifiées dans la table example_tbl.
L'exemple suivant met à jour la valeur du champ example_title où example_id vaut 3 dans la table de données :
Instruction SQL UPDATE :
D'après les résultats, le example_title avec example_id 3 a été modifié.
Mettre à jour les données à l'aide d'un script PHP
En PHP, la fonction mysqli_query() est utilisée pour exécuter des instructions SQL. Vous pouvez utiliser ou omettre la clause WHERE dans l'instruction SQL UPDATE.
Remarque :Ne pas utiliser la clause WHERE mettra à jour toutes les données de la table de données, alors soyez prudent.
Cette fonction a le même effet que d'exécuter l'instruction SQL dans l'mysql>invite de commande.
Exemple
L'exemple suivant met à jour les données dans le champ example_title où example_id est 3.