Не работает запрос

Статус
В этой теме нельзя размещать новые ответы.

Stripe

Участник
Регистрация
20 Окт 2007
Сообщения
164
Реакции
9
UPDATE EEE SET `lalala` = '111' WHERE `lalala` = 'привет'

Надо из таблицы EEE в колонке lalala заменить все встречающиеся привет на 111.
В результате приведенного выше кода ни одна строка не затронута. В чем косяк?
 
Нужно заменить при полном совпадении или в строке, кроме "привет", что то ещё есть?

Возможно проблема с кодировкой, надо попробовать тот же запрос с латиницей.
 
Нужно заменить при полном совпадении или в строке, кроме "привет", что то ещё есть?
Возможно проблема с кодировкой, надо попробовать тот же запрос с латиницей.
C цифрами и латиницей работает, как задать правильную кодировку? Сама база в cp1251? однако эта таблица в utf-8.
В строке больше ничего нет кроме вышеуказанных слов.
 
После установки соединения с базой поставить один из этих запросов, в зависимости от реальной кодировки передаваемых в запросах строк.
Код:
SET NAMES "utf8"
Код:
SET NAMES "cp1251"
 
Нашел косяк: в поле таблицы следом за "привет" есть еще одна пустая строка. Можно как то в запросе указать ее или нужно выполнять дополнительные действия для устранения перехода на новую строку?
 
можно так:
UPDATE EEE SET `lalala` = '111' WHERE `lalala` like '%привет%'
а можно так:
UPDATE EEE SET `lalala` =REPLACE(`lalala`, 'привет', '111');
 
Спасибо! Проблема решена!
 
всем бы такие проблемы :)
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху