Mailinglisten-Archive |
> Dann lies mal auch weiter... ich habe ALLES gelesen! und das sogar auf der englischen seite ( weil meißt aktueller) > REPLACE funktioniert genau wie INSERT, ausser dass der alte Datensatz > gelöscht wird, bevor ein neuer eingefügt wird, wenn ein alter > Datensatz in der Tabelle denselben Wert wie der neue auf einem > eindeutigen Index hat. > > Nun, was wollen uns diese Worte sagen? > Da ist von einem eindeutigen Index die Rede, ist keiner gesetzt wird > nix ersetzt... den index hat er ja wohl wie er schreibt: "Spalte 1: id mit PrimaryKey und autoincrement Typ Integer" also passt das so weit, oder? > Weiter unten: > > Beachten Sie, dass REPLACE keine Informationen der Reihe speichert. > Es funktioniert genau wie eine DELETE und eine INSERT Query. Wenn Sie > demnach ein "REPLACE INTO table (col1, > col2) VALUES (val1, val2)" ausführen, wobei col1 den Index hat, > werden alle anderen Werte gelöscht. Es ist kein Ersatz für UPDATE > oder INSERT... > > Wenn du jetzt ein Replace über ein AUTOINCREMENT - Feld veranlasst, > wird dieses Feld !!! NICHT !!! mit einem neuen Wert belegt, sondern > es wird der alte Wert beibehalten. Wen du diesen ändern willst, > bleibt dir nur ein DELETE mit anschliessenden INSERT... ja und wo ist da nun dein problem? das widerspricht doch in keinster weiße meiner aussage noch belegt dies das das query falsch wäre, oder? für dich nochmal langsam: ausgangslage: CREATE TABLE `t1` ( `id` int(11) NOT NULL auto_increment, `data1` int(11) NOT NULL default '0', `data2` varchar(10) NOT NULL default '', PRIMARY KEY (`id`) ) TYPE=MyISAM AUTO_INCREMENT=3 ; INSERT INTO `t1` VALUES (1, 1, 'eins'); INSERT INTO `t1` VALUES (2, 2, 'zwei'); auf diese tabbele nun folgendes sql: REPLACE INTO `t1` SET id = 1, data1 = 3, data2 = 'drei' ist erfolgreich, also ES FUNKTIONIERT!! vorher: id | data1 | data2 ------------------- 1 | 1 | eins 2 | 2 | zwei hinterher: id | data1 | data2 ------------------- 1 | 3 | drei 2 | 2 | zwei was ist nun falsch an meinen aussagen?? und was willst du mir überhaupt sagen? > Es ist mir aber immer noch ein Rätsel was du überhaupt bezwecken > willst? was ich bezwecken will? ich will gar nix bezwecken, war ja auch nicht meine frage!! sondern vom Stephan Kraus zu guter letzt komme ich also (zum dritten mal heut) zu dem schluss das sein query grundsätzlich stimmt, wahrschenlich ist ein spalten-name falsch oder ein tipp-fehler vorhanden! aber ich finds gut das wir jetzt in sinnlosen mails diskutiert haben was schon die ganze zeit klar war... wenn man ordentlich lesen würde! trotzdem (oder gerade deswegen) liebe grüße :-) -- Sebastian Mendel www.sebastianmendel.de www.tekkno4u.de www.nofetish.com -- Infos zur Mailingliste, zur Teilnahme und zum An- und Abmelden unter -->> http://www.4t2.com/mysql
php::bar PHP Wiki - Listenarchive