Ich habe eine SQL-Abfrage, wo ich mehrere Zeilen in einzelne Abfrage einfügen möchten. so habe ich so etwas wie:MySQL ON DUPLICATE KEY UPDATE für mehrere Zeilen einfügen in einzelne Abfrage
$sql = "INSERT INTO beautiful (name, age)
VALUES
('Helen', 24),
('Katrina', 21),
('Samia', 22),
('Hui Ling', 25),
('Yumie', 29)";
mysql_query($sql, $conn);
Das Problem ist, wenn ich diese Abfrage ausführen, ich, ob ein eindeutiger Schlüssel überprüfen möchten (was nicht der Primärschlüssel ist), zum Beispiel. 'name' im obigen Fall, sollte überprüft werden und wenn ein solcher 'Name' bereits existiert, sollte die entsprechende ganze Zeile aktualisiert werden sonst eingefügt.
Zum Beispiel, in unten, zB wenn 'Katrina' bereits in der Datenbank vorhanden ist, sollte die ganze Zeile, unabhängig von der Anzahl der Felder, aktualisiert werden. Wenn 'Samia' nicht vorhanden ist, sollte die Zeile eingefügt werden.
ich daran gedacht, mit:
INSERT INTO beautiful (name, age)
VALUES
('Helen', 24),
('Katrina', 21),
('Samia', 22),
('Hui Ling', 25),
('Yumie', 29) ON DUPLICATE KEY UPDATE
Hier ist die Falle. Ich blieb stecken und war verwirrt, wie es weitergehen sollte. Ich habe mehrere Zeilen zum Einfügen/Aktualisieren zu einem Zeitpunkt. Bitte gib mir die Richtung. Vielen Dank.
Danke eine Tonne. Das ist genau das, was ich will .... Danke nochmal ... – Prashant
** schön **, genau was ich brauchte. * heh, was ich dort gemacht habe? * –
Was ist, wenn wir eine IF-Anweisung in das UPDATE einfügen müssen, die für jede Zeile eine andere Bedingung hat? – logic