1167 Stimmen

Einfügen in eine MySQL-Tabelle oder Aktualisieren, falls vorhanden

Ich möchte eine Zeile zu einer Datenbanktabelle hinzufügen, aber wenn eine Zeile mit demselben eindeutigen Schlüssel vorhanden ist, möchte ich die Zeile aktualisieren.

Zum Beispiel:

INSERT INTO table_name (ID, NAME, AGE) VALUES(1, "A", 19);

Nehmen wir an, der eindeutige Schlüssel lautet ID und in meinem Datenbank gibt es eine Zeile mit ID = 1 . In diesem Fall möchte ich diese Zeile mit diesen Werten aktualisieren. Normalerweise führt dies zu einem Fehler.
Wenn ich die INSERT IGNORE wird der Fehler ignoriert, aber es wird trotzdem nicht aktualisiert.

5voto

Renish Gotecha Punkte 1702

In meinem Fall habe ich folgende Abfragen erstellt, aber in der ersten Abfrage, wenn id 1 ist bereits vorhanden und Alter ist bereits vorhanden, wenn Sie danach die erste Abfrage ohne age als der Wert von age wird keine sein

REPLACE into table SET `id` = 1, `name` = 'A', `age` = 19

Zur Vermeidung des obigen Problems erstellen Sie eine Abfrage wie folgt

INSERT INTO table SET `id` = '1', `name` = 'A', `age` = 19 ON DUPLICATE KEY UPDATE `id` = "1", `name` = "A",`age` = 19

möge es Ihnen helfen ...

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