Ъпдейт на колона, без изчистването на старите данни

nom3r1

Registered
Искам да направя заявка, с която да ъпдейтвам дадена колона, като самия ъпдейт има за цел да добавя нов символ "B", но не искам да изчиства старата информация тоест.

Ако имам в колоната информация: alpoi , при ъпдейта да стане: ablpoi.

Ако заявката ми е:

[sql]UPDATE `table` SET `colona`=replace(colona,'alpoi','b') WHERE user='1'[/sql]

то тогава ще замени alpoi с 'b', което не ме устройва.

[sql]UPDATE `table` SET `colona`=replace(colona,'','b') WHERE user='1'[/sql]

Няма да добави нищо..


Също така не ме устройва и:

[sql]UPDATE `table` SET `colona`='b' WHERE user='1'[/sql]

защото пак ще изчисти цялата колона и ще добави 'b'
 

Radko

Registered
Правиш си заявка в която взимаш текущата информация от съответната колона. Обработваш си я в скрипта, тоест в случая ти добавяш 'b'. Записваш новата информация в нова променлива.

Ъпдейтваш БДто с новата променлива.
 

nom3r1

Registered
Radko каза:
Правиш си заявка в която взимаш текущата информация от съответната колона. Обработваш си я в скрипта, тоест в случая ти добавяш 'b'. Записваш новата информация в нова променлива.

Ъпдейтваш БДто с новата променлива.

Тоя вариант го оставям като последен. Мисля, че има и алтернатива, която може да стане с една заявка само.
 

nom3r1

Registered
macmen каза:
Този символ в в коя част на стринга се добавя винаги

Без значение. Отпред, от зад.. Цаката е да не се променят данните, които са вътре. А, ако няма данни тоест полето е празно, пак да няма проблеми и да си добави съответната буква "b"
 

Radko

Registered
Код:
UPDATE `my_table` SET `colona` = CONACT(`colona`, ' b');

Само това се сещам но ще стане alpoib.
 

Горе