Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Ich möchte INSERT ohne Datensatz in DB machen

Wenn Sie dies in einer einzigen Anweisung tun möchten (klingt nach dem, was Sie wollen), würde ich die Verwendung von INSERT ... ON DUPLICATE KEY UPDATE empfehlen Syntax wie folgt:

INSERT INTO table (id, someothervalue) VALUES (1, 'hi mom')
  ON DUPLICATE KEY UPDATE someothervalue = 'hi mom';

Das anfängliche INSERT -Anweisung wird ausgeführt, wenn es keinen vorhandenen Datensatz mit dem angegebenen Schlüsselwert gibt (entweder Primärschlüssel oder eindeutig). Wenn ein Datensatz bereits vorhanden ist, wird das folgende UPDATE Anweisung (someothervalue = 3 ) wird ausgeführt.

Dies wird in allen Versionen von MySQL unterstützt. Weitere Informationen finden Sie auf der Seite MySQL-Referenzhandbuch für INSERT ... ON DUPLICATE KEY UPDATE