1088 Stimmen

Wie kann ich "insert if not exists" in MySQL ausführen?

Ich habe zunächst gegoogelt und diesen Artikel gefunden Wie man INSERT if NOT EXISTS-Abfragen in Standard-SQL schreibt in dem es um Mutex-Tabellen geht.

Ich habe eine Tabelle mit ~14 Millionen Datensätzen. Wenn ich weitere Daten im gleichen Format hinzufügen möchte, gibt es dann eine Möglichkeit, sicherzustellen, dass der Datensatz, den ich einfügen möchte, nicht bereits vorhanden ist, ohne ein Abfragepaar zu verwenden (d. h. eine Abfrage zur Überprüfung und eine zum Einfügen, wenn die Ergebnismenge leer ist)?

Ist ein unique Beschränkung auf ein Feld garantieren die insert scheitern wird, wenn es schon da ist?

Es scheint, dass mit lediglich eine Einschränkung, wenn ich die Einfügung über PHP ausführe, bricht das Skript ab.

-2voto

INSERT INTO table_name (columns) VALUES (values) ON CONFLICT (id) DO NOTHING;

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X