Mailinglisten-Archive |
Hallo swEk (so moecht ich nicht heissen;-) > woran orientieren die sich denn? an dem was Du angibst;-) > also ich > meine mit welcher spalte vergleichen die? Hier wird keine Vergleichsoperation durchgefuehrt. Du sagst und das System macht. Update: damit kann man bestehende Datensaetze updaten, wie der Name sagt. Man kann die Werte in einer oder mehreren Spalten veraendern. Dabei werden die jeweiligen Spalten angegeben, deren Wert modifiziert wird und wenn man keine weitere Bedingung angibt, werden alle Werte in der Spalte (in der ganzen Tabelle also) auf den neuen Wert gesetzt. UPDATE tabellenname SET spalte1=neuerWert1, spalte2=neuer Wert2; setzt in der gesamten Tabelle spalte1 auf neuerWert1 und spalte2 auf neuerWert2. UPDATE tabellenname SET spalte1=neuerWert1, spalte2=neuer Wert2 WHERE bedingung; setzt in den Datensaetzen, die der Bedingung entsprechen spalte1 auf neuerWert1 und spalte2 auf neuerWert2. > er findet die alte nummer, > behält sie bei und updatet die angegebene spalte. Richtig. Replace: ist so was Aehnliches wie INSERT. Hier wird ein neuer Datensatz eingefuegt und nicht ein bestehender veraendert, allenfalls rausgeschmissen. Der Unterschied zu Insert: wenn ein Datensatz in eine Tabelle eingefuegt werden soll, die einen eindeutigen Index auf einem Attribut hat, und der Index existiert schon in der Tabelle, dann wird der alte Datensatz mit diesem Index erst aus der Tabelle gekillt, bevor der neue Datensatz mit demselben Wert in dem Indexattribut eingefuegt wird. Weil bei eindeutigen Indexen jeder Wert nur einmal vorkommen darf. > wie findet das REPLACE den > betreffenden record wieder? Replace findet den alten Datensatz ueber den eindeutigen Index, schmeisst ihn raus und vergibt diesen Index jetzt an den neuen Datensatz. So wird auch dieser gefunden;-) > also grundsätzlich die frage: wann greift REPLACE? Wenn die Tabelle einen eindeutigen Index hat und dieser Wert zum zweiten Mal vergeben wird. Hier gilt dasselbe: *Du* gibst die Spalten an und die Werte REPLACE tabellenname (spalte1, spalte2, ...) VALUES (expr1, expr2,...) wobei die Reihenfolge und Anzahl der Spalten und Werte einander entsprechen muessen. Gruss Conni
php::bar PHP Wiki - Listenarchive