Heim > Datenbank > MySQL-Tutorial > Wie ignoriere ich doppelte Schlüsseleinfügungen in SQL ohne Fehler?

Wie ignoriere ich doppelte Schlüsseleinfügungen in SQL ohne Fehler?

Patricia Arquette
Freigeben: 2024-11-27 16:05:11
Original
896 Leute haben es durchsucht

How to Ignore Duplicate Key Inserts in SQL Without Errors?

Wie ignoriere ich doppelte Schlüssel beim Einfügen?

Sie versuchen, Daten in eine Tabelle einzufügen, in der das Tag-Feld eine UNIQUE-Einschränkung hat . Um doppelte Tags zu ignorieren, suchen Sie nach einer Lösung, die diese doppelten Einfügungen ignoriert.

Lösung:

Anstatt INSERT IGNORE zu verwenden, das alle Fehler unterdrückt, sollten Sie die Verwendung von in Betracht ziehen folgende Ansatz:

INSERT INTO table_tags (tag) VALUES ('tag_a'),('tab_b'),('tag_c')
ON DUPLICATE KEY UPDATE tag=tag;
Nach dem Login kopieren

Erklärung:

Wenn bei Verwendung von ON DUPLICATE KEY UPDATE bereits ein Tag in der Datenbank vorhanden ist, wird sein Wert nicht aktualisiert. Das bedeutet, dass doppelte Einfügungen ignoriert werden, ohne dass es zu einem Fehler kommt. Der Code, den Sie mit dem „*“ angegeben haben, funktioniert nicht, da er nicht angibt, welches Tag ignoriert werden soll.

Beispiel:

Wenn Sie die obige Abfrage ausführen, Sie werden feststellen, dass die folgende Meldung angezeigt wird:

Query OK, 0 rows affected (0.07 sec)
Nach dem Login kopieren

Dies zeigt an, dass die Daten erfolgreich eingefügt wurden, wobei alle doppelten Tags ignoriert wurden.

Das obige ist der detaillierte Inhalt vonWie ignoriere ich doppelte Schlüsseleinfügungen in SQL ohne Fehler?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage