Wenn nicht bekannt ist ob ein Datensatz bereits vorhanden ist und somit nur bearbeitet werden muss (UPDATE) oder neu angelegt werden muss (INSERT), hilft eine Erweiterung der INSERT-Anweisung weiter.
Wenn beim Hinzufügen ein doppelter Primärschlüssel (PRIMARY KEY) gefunden wird, wird der Datensatz mit diesem Primärschlüssel geändert und somit nicht neu angelegt.
INSERT INTO tabelle
( id
, feld_1
, feld_2
) VALUES ( 1
, 'wert'
, 'wert'
) ON DUPLICATE KEY
UPDATE feld_1 = 'wert'
, feld_2 = 'wert'