Cytat(Pyton_000 @ 8.05.2016, 11:55:38 )

Albo użyj
UPDATE IGNORE shop_product SET symbol=symbol+'0'
Obawiam się stwożyć dotakową kolumnę, więc skorzystałem z
pobierz, plaintext
UPDATE IGNORE shop_product SET symbol=symbol+'0'
Jednak zamiast dodać 0 do wszystkich wierszy kolumny symbol polecenie to zminiło tylko pierwszy wiersz w tej kolumnie na wartość 0.
Co z tym zrobić?
W kolumnie jest ok 7000 wierszy (indeksów artykułów).
Podobną operację (dodania 0 do indeksów artykułów) zrobiłem w systemie WF-MAG (baza SQL), ale to przez pomoc ASSECO (produceta).
Polecenie było trochę odmienne ze względu na specyfikację innych artykułów niż te w sklepie www. Wyglądało tak:
pobierz, plaintext
USE wapro.
Declare @idm numeric
SELECT @idm=0
While 1=1
Begin
IF NOT EXISTS (SELECT 1 FROM magazyn WHERE id_magazynu>@idm)
Break
SELECT top 1 @idm=id_magazynu FROM magazyn WHERE id_magazynu>@idm ORDER BY id_magazynu
UPDATE artykul SET indeks_katalogowy=indeks_katalogowy+'0' WHERE Id_magazynu=@idm AND len(indeks_katalogowy)=6 AND indeks_katalogowy+'0' NOT IN (SELECT indeks_katalogowy FROM artykul WHERE id_magazynu=@idm)
End
Może to coś naprowadzi ....
Cytat(Tomplus @ 8.05.2016, 08:00:08 )

Spróbuj tym zapytaniem
Kod
Update shop_product set symbol=CONCAT(symbol,'0');
Komunikat masz konkretny, pojawia ci się zapytanie gdzie chcesz powtórzyć unikalny
symbol i prawdopodobnie posiadasz JUŻ - także np. abk1300.
Jak proponowałbym zrobić inaczej.
Stworzyć kolumnę
symbol2 [ale nie unikalną] a następnie dopiero dodać to ZERO. Potem tylko zmienisz nazwy.
Baza ma ponad 7000 rekordów, więc rzeczywiście możliwe jest, że jest jakiś rekord 7 znakowy z 0, ale jak to można obejść bez tworzenia dodatkowej kolumny, czego się obawiam.
Cytat(mmmmmmm @ 8.05.2016, 09:20:56 )

Nie idź to drogą. Więcej problemów możesz sobie narobić...
Nie poszedłem

. Tylko co proponujesz?