Moin, folgendes ist das Problem: Per php möchte ich in MySQL - den Wert eines Feldes ÄNDERN, wenn es bereits existiert, - oder einen entsprechenden Datensatz HINZUFÜGEN, wenn das Feld noch nicht exisitierte. Sprich, auf gut hochdeutsch: Hinterher soll da stehen: Eindeutige ID: 13 Name: Ratti ...egal, ob es die "13" vorher schon gab und welchen Wert "Name" hatte. Mein Problem: Es soll auch dann klappen, wenn beides bereits vorher exakt so vorhanden war! Ich habe sowas im Einsatz, Pseudocode, ungequotet: UPDATE SET name="ratti" WHERE id=13 if mysql_affected_rows == 0 { INSERT SET name="ratti" , id=13 } Das klappt in allen Fällen - AUSSER, wenn der Datensatz vorher schon genau so aussah, denn affected_rows meldet nur die tatsächlich veränderten Datensätze zurück (Bin ich alleine mit der Meinung, daß das total bescheuert ist?). In diesem Fall bekomme ich eine 0 geliefert, der nächste Befehl liefert mir dann einen Fehler, weil die id als UNIQUE deklariert ist - was auch korrekt ist. Da die Datenbank sehr groß ist, kommt es nicht in Frage, vorher mit SELECT die Werte auszugraben und zu gucken, was man tun muß. Da das ganze auch auf älteren Distris laufen soll, kommt ebenfalls nicht in Frage INSERT ... ON DUPLICATE KEY UPDATE zu verwenden, weil das ab MySQL 4.1 und somit zu neu ist. Für REPLACE finde ich leider nicht heraus, seit wann das drin ist - und ehrlich gesagt, ich begreife nicht, was genau es denn nun ersetzt und was nicht. Gruß und Danke, Ratti -- -o) fontlinge | Fontmanagement for Linux | Schriftenverwaltung in Linux /\\ http://freshmeat.net/projects/fontlinge/ _\_V http://www.gesindel.de https://sourceforge.net/projects/fontlinge/