Maison >base de données >tutoriel mysql >Comment mettre à jour ou insérer dans une table MySQL en fonction de l'existence d'une clé unique ?

Comment mettre à jour ou insérer dans une table MySQL en fonction de l'existence d'une clé unique ?

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-04 07:12:12768parcourir

How to Update or Insert into a MySQL Table Based on a Unique Key's Existence?

Mise à jour ou insertion de table MySQL si une clé unique existe

Dans MySQL, vous pouvez insérer une nouvelle ligne dans une table si une clé unique spécifique n'existe pas, ou mettez à jour une ligne existante si la clé existe. Ceci peut être réalisé à l'aide de l'instruction INSERT ... ON DUPLICATE KEY UPDATE.

Pour obtenir le comportement souhaité pour votre scénario, vous devez modifier votre requête d'origine en une instruction INSERT ... ON DUPLICATE KEY UPDATE. La clause ON DUPLICATE KEY UPDATE spécifie quelles colonnes doivent être mises à jour si la clé unique existe déjà. Dans ce cas, vous souhaitez mettre à jour la colonne Timestamp.

Voici l'instruction modifiée :

INSERT INTO AggregatedData (datenum, Timestamp)
VALUES ("734152.979166667", "2010-01-14 23:30:00.000")
ON DUPLICATE KEY UPDATE
  Timestamp = VALUES(Timestamp)

Cette instruction insérera une nouvelle ligne avec le datenum et l'horodatage spécifiés. Si une ligne avec le même datenum existe déjà, seul le Timestamp sera mis à jour avec la nouvelle valeur.

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