Avec MariaDB UPDATE, vous modifiez les données existantes dans une table. Ainsi, vous assurez des informations cohérentes et à jour dans votre base de données.

À quoi sert la commande MariaDB UPDATE ?

La commande UPDATE dans MariaDB modifie les valeurs dans une ou plusieurs colonnes d’une table. Contrairement aux commandes INSERT ou DELETE, UPDATE ajuste les données existantes sans créer de nouvelles lignes ni supprimer les existantes. Ainsi, cette commande convient à toutes les situations où les données changent régulièrement, mais où les structures sous-jacentes restent identiques.

Dans les applications basées sur des bases de données, UPDATE est souvent utilisé en arrière-plan, par exemple lors de la modification des profils utilisateurs ou de la mise à jour des données de transaction. Les scénarios typiques incluent la correction d’erreurs de saisie, la mise à jour des stocks ou la définition de valeurs de statut dans un processus de commande. Il est crucial de bien déterminer quelles colonnes doivent être ajustées. Sinon, la modification affectera l’ensemble de la table. Pour cette raison, un filtrage précis est essentiel pour un entretien sécurisé des données avec UPDATE.

Compute Engine
La solution IaaS idéale pour gérer vos charges de travail
  • vCPU aux coûts avantageux et cœurs dédiés performants
  • Sans engagement pour plus de flexibilité
  • Assistance par des experts 24h/24 et 7j/7 incluse

Syntaxe de la commande UPDATE

La syntaxe de base de la commande UPDATE de MariaDB se compose de trois parties : l’indication de la table, la partie SET avec les colonnes à modifier et une clause WHERE optionnelle pour restreindre les lignes concernées.

UPDATE table_name
SET column1 = value1, column2 = value2
WHERE condition;
sql

Paramètres et arguments dans la commande UPDATE

La commande UPDATE dans MariaDB accepte plusieurs paramètres qui vous permettent de contrôler précisément quelles données doivent être modifiées et sous quelle forme. Les composants principaux incluent le nom de la table, SET, WHERE, ORDER BY et LIMIT.

  • table_name : nom de la table dans laquelle vous souhaitez modifier des données.
  • SET : définit une ou plusieurs colonnes qui recevront de nouvelles valeurs. Vous pouvez également utiliser des fonctions ou des opérations arithmétiques, par exemple SET views = views + 1.
  • WHERE : filtre les lignes concernées en fonction d’une condition. Sans WHERE, MariaDB modifie toutes les lignes de la table.
  • ORDER BY : trie les lignes avant la mise à jour. C’est particulièrement pertinent lorsque vous utilisez LIMIT.
  • LIMIT : limite le nombre de lignes modifiées, par exemple aux cinq premiers résultats.
  • Clauses JOIN : dans des scénarios plus complexes, vous pouvez combiner UPDATE avec la commande JOIN pour traiter des données provenant de plusieurs tables. Cette variante permet des modifications conditionnelles basées sur le contenu des tables liées.
  • SUBSELECT ou sous-requêtes : Vous pouvez également utiliser des sous-requêtes dans la clause SET ou WHERE pour adopter des valeurs dynamiques à partir d’autres tables.
  • Fonctions et opérateurs : dans SET, vous pouvez utiliser des fonctions, des opérations mathématiques, des conditions (IF()) ou des concaténations (CONCAT()) pour générer du contenu de manière dynamique.

Exemples d’utilisation de MariaDB UPDATE

La commande UPDATE dans MariaDB est utilisée dans de nombreux scénarios réels. Vous pouvez l’utiliser pour corriger des entrées incorrectes, adapter des informations changeantes ou définir automatiquement de nouvelles valeurs lorsque l’état d’un processus change. Découvrez ci-dessous des exemples pratiques d’utilisation de UPDATE.

Mettre à jour une valeur unique

La clause WHERE garantit qu’un seul enregistrement spécifique est affecté. Dans cet exemple, nous modifions l’adresse email du client avec l’ID « 42 ».

UPDATE customers
SET email = 'new.email@example.com'
WHERE customer_id = 42;
sql

Modifier plusieurs colonnes simultanément

Ici, nous ajustons à la fois le prix (price) et le stock d’un produit. Dans la colonne stock, la valeur actuelle est réduite de 1, par exemple après une vente.

UPDATE products
SET price = 19.99, stock = stock - 1
WHERE product_id = 1001;
sql

Mettre à jour les valeurs pour plusieurs lignes

Cette requête définit le statut de toutes les commandes sur « shipped » (expédié) lorsqu’une date d’expédition est renseignée et que le statut est encore « processing » (en traitement).

UPDATE orders
SET status = 'shipped'
WHERE shipping_date IS NOT NULL AND status = 'processing';
sql

Modifier uniquement un certain nombre de lignes

Ici, nous désactivons les 100 utilisateurs les plus anciens. Grâce à ORDER BY et LIMIT, on peut contrôler quelles lignes seront modifiées en priorité.

UPDATE users
SET active = 0
ORDER BY last_login ASC
LIMIT 100;
sql

MariaDB UPDATE avec la condition IF()

La fonction IF() nous permet de formuler des conditions directement dans la section SET. Dans l’exemple suivant, MariaDB vérifie le prix de chaque produit. Si le prix dépasse 100, elle fixe la remise (discount) à 15 %, sinon à 5 %.

UPDATE products
SET discount = IF(price > 100, 0.15, 0.05);
sql
Bases de données managées
Des bases de données gérées et sûres
  • Solutions flexibles, adaptées à vos besoins
  • Architecture de niveau professionnel, gérée par des experts
  • Hébergées en Europe, conformément aux normes de protection des données les plus strictes
Cet article vous a-t-il été utile ?
Aller au menu principal