Heim >Datenbank >MySQL-Tutorial >Wie erreicht man die Funktionalität „INSERT ... ON DUPLICATE KEY (nichts tun)' in SQL?
Erreichen der Funktionalität „INSERT ... ON DUPLICATE KEY (nichts tun)“
Im bereitgestellten Szenario besteht das Ziel darin, einen einzufügen Zeile in eine Tabelle mit einem eindeutigen Schlüssel einfügen, ohne einen Fehler auszulösen oder die Zeile zu aktualisieren, wenn der Schlüssel bereits vorhanden ist.
Option 1: INSERT ... ON DUPLICATE KEY UPDATE
Während die bereitgestellte Syntax eine Option „INSERT ... ON DUPLICATE KEY UPDATE“ vorschlägt, bietet sie keine Möglichkeit, die Datenbank explizit anzuweisen, „ nichts tun." Stattdessen müssen Aktualisierungswerte für doppelte Schlüsselfälle angegeben werden.
Option 2: INSERT ... ON DUPLICATE KEY UPDATE>
Ein alternativer Ansatz ist die Verwendung von „INSERT ...“ BEI DUPLICATE KEY UPDATE>
Option 3: IGNORIEREN EINFÜGEN
Für Szenarien, in denen Fehler stellen kein Problem dar, die Syntax „INSERT IGNORE“ kann verwendet werden. Dieser Ansatz ignoriert alle Fehler, die durch den Einfügevorgang ausgelöst worden wären, einschließlich Fehlern aufgrund doppelter Schlüssel und der Erschöpfung des Felds durch automatische Inkrementierung. Der Fehler wird einfach unterdrückt, ohne die vorhandenen Zeilen zu ändern .
Empfehlungen
Für Fälle, in denen Fehler kritisch sind und die Erschöpfung der automatischen Inkrementierung ein Problem darstellt, „INSERT ... AUF DUPLICATE KEY UPDATE>
Das obige ist der detaillierte Inhalt vonWie erreicht man die Funktionalität „INSERT ... ON DUPLICATE KEY (nichts tun)' in SQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!