ON DUPLICATE KEY ???
Martin Hein
- datenbank
0 Alexander (HH)0 gungosh0 Rouven
Hallo Forum,
ich habe in meiner Tabelle ein Feld rewrite\_url
vom Typ 'varchar(255)'. Das Feld ist unique. Ich versuche ein
Update der Tabelle auszuführen:
UPDATE content\_offline\_new
SET rewrite\_url
= 'text'
WHERE site\_id
=299
mit dem Ergebnis: "#1062 - Duplicate entry 'text'
Soweit ist alles korrekt und ich habe insofern die Sicherheit,
dass es keine Datensätze mit Werten geben kann, die in dem Feld
den selben Wert haben.
Jetzt habe ich in der MySQL-Dokumentation die Anweisung
'ON DUPLICATE KEY' gefunden. Die scheint in etwa das
zu machen, was ich brauche und ich habe mal folgenden
Versuch gewagt:
UPDATE content\_offline\_new
SET rewrite\_url
= 'text'
WHERE site\_id
=299
ON DUPLICATE KEY
UPDATE rewrite\_url
= "alternativtext"
Das hat natürlich so nicht hingehauen. Jetzt frag ich mich:
Ist die Anweisung 'ON DUPLICATE KEY' für das,
was ich vorhabe zu gebrauchen ?
Wenn nicht: Gibt es eine Alternative für meine Fall ?
danke für eure Tipps und
beste Gruesse,
martin
Moin Moin!
Das hat natürlich so nicht hingehauen.
Was ist passiert? Ist Dir der Server explodiert?
Jetzt frag ich mich:
http://dev.mysql.com/doc/refman/5.0/en/insert-on-duplicate.html sollte helfen ...
Alexander
Hallo,
ich sehe kein "on duplicate key update" für das Update-Statement, nur für das Insert-Statement ;)
http://dev.mysql.com/doc/refman/5.0/en/update.html
Grüße,
Gun
Hello,
- Wenn nicht: Gibt es eine Alternative für meine Fall ?
erkläre uns bitte doch erstmal, _was_ _warum_ UNIQUE definiert ist. Was willst du machen, wenn dagegen verstoßen wird und hast du dir gut überlegt warum dagegen nicht verstoßen werden darf?
MfG
Rouven