ukulele
Datenbank-Guru
- Beiträge
- 5.284
Ergänzend möchte ich noch mal darauf hinweisen das Datentypen und implizite Konvertierungen dir schnell Probleme machen können. Du verwendest hier im WHERE Hochstriche wie bei einer Zeichenkette, welches Format die Spalte nun hat hast du noch nicht verraten. Auch wenn für SQL 0 = '0' ist (weil automatisch konvertiert wird) bin ich kein Freund davon solche Sachen nicht bewusst deutlich zu machen.Jetzt funktioniert es
Code:UPDATE products_attributes_download SET products_attributes_maxcount = REPLACE(products_attributes_maxcount, "0", "30") WHERE products_attributes_maxcount = '0'
Mit WHERE hatte ich schon probiert aber immer an der falschen Stelle gesetzt
Also abgesehen von deinem Datenmodell:
1) Grundsätzlich mit WHERE einschränken sonst geht das irgendwann schief.
2) Datentypen beachten und "bewusst" konvertieren.
3) replace() nur für Zeichenketten verwenden und nur dann wenn das UPDATE nur einen Teil des Wertes verändern soll.