Accéder au contenu principal
Documents
Gestion des tableaux et des schémasSyntaxe de baseDéclencheursBases de donnéesFonctions de la dateFonctions des chaînes de caractèresFonctions mathématiquesFonctions JSONIndexes

PostgreSQL UPDATE

L'instruction `UPDATE` de PostgreSQL est utilisée pour modifier les tableaux existants. Elle vous permet de modifier les valeurs d'une ou plusieurs colonnes pour les lignes qui répondent à des conditions spécifiques.

Utilisation

L'instruction `UPDATE` est utilisée lorsque vous devez modifier des données dans un tableau sans supprimer et réinsérer des tableaux. Il faut spécifier le tableau, les tableaux à mettre à jour et les nouvelles valeurs, souvent accompagnés d'une clause `WHERE` pour limiter le champ d'application.


UPDATE table_name
SET column1 = value1, column2 = value2, ...
[WHERE condition];

Dans cette syntaxe, `UPDATE nom_table` spécifie le tableau à modifier, et `SET` assigne de nouvelles valeurs aux tableaux spécifiés, éventuellement filtrés par une condition `WHERE`.

Exemples

1. Mise à jour de base


UPDATE employees
SET salary = 50000
WHERE employee_id = 123;

Cet exemple met à jour la colonne `salary` à 50,000 pour l'employé dont le `employee_id` est 123.

2. Mise à jour de plusieurs colonnes


UPDATE products
SET price = price * 1.1, stock = stock - 5
WHERE product_id = 456;

Ici, le `prix` est augmenté de 10%, et le `stock` est réduit de 5 pour le produit avec `product_id` 456.

3. Mise à jour conditionnelle avec une sous-requête


UPDATE customers
SET status = 'inactive'
WHERE last_order_date < (SELECT NOW() - INTERVAL '1 year');

Cet exemple définit le statut "inactif" pour les clients qui n'ont pas passé de commande depuis plus d'un an, en utilisant une sous-requête pour la condition de date.

4. Utilisation de la clause RETURNING


UPDATE employees
SET salary = 50000
WHERE employee_id = 123
RETURNING employee_id, salary;

Cet exemple ne met pas seulement à jour le `salary` mais renvoie également le `employee_id` et le `salary` mis à jour à des fins de vérification.

Conseils et bonnes pratiques

  • Utilisez les clauses WHERE à bon escient. Utilisez toujours une clause `WHERE` pour cibler des tableaux spécifiques, afin d'éviter des mises à jour involontaires de tous les tableaux.
  • Sauvegardez les données avant de procéder à la mise à jour. Sauvegardez vos données avant d'effectuer des mises à jour importantes afin d'éviter toute perte de données.
  • Testez les mises à jour avec les transactions. Utilisez les transactions pour tester les mises à jour, ce qui vous permet d'annuler les changements s'ils ne répondent pas à vos attentes.
  • Contrôler les performances. Vérifiez régulièrement l'impact sur les performances, en particulier lors de la mise à jour de grands ensembles de données ou de l'utilisation de conditions complexes.
  • Soyez conscient des problèmes de concurrence. Lorsque vous mettez à jour des lignes dans un environnement multi-utilisateurs, soyez attentif aux problèmes de verrouillage potentiels. Pensez à utiliser des niveaux d'isolation appropriés pour gérer efficacement les transactions simultanées.