Mysql
 sql >> Base de données >  >> RDS >> Mysql

Insertion de la table MySql si elle n'existe pas, sinon mise à jour

Jai a raison d'utiliser INSERT ... ON DUPLICATE KEY UPDATE .

Notez que vous n'avez pas besoin d'inclure datenum dans la clause de mise à jour puisqu'il s'agit de la clé unique, elle ne devrait donc pas changer. Vous devez inclure toutes les autres colonnes de votre table. Vous pouvez utiliser le VALUES() pour s'assurer que les valeurs appropriées sont utilisées lors de la mise à jour des autres colonnes.

Voici votre mise à jour réécrite en utilisant le bon INSERT ... ON DUPLICATE KEY UPDATE syntaxe pour MySQL :

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