Re: Регулярные выражения в mysql для строк UCS-2
От: Centaur Россия  
Дата: 05.06.12 16:58
Оценка: +1
Здравствуйте, furang, Вы писали:

F>Есть необходимость пользоваться регулярными выражениями в mysql запросах. Пока поля в таблицах были все в utf8 все было нормально. Но появилась необходимость пользоваться регулярными выражениями для полей ucs2.


Для начала расскажите о причинах, побудивших вас хранить ucs-2 в базе данных. http://www.utf8everywhere.org/

F>SELECT * FROM `urls` WHERE `url` LIKE '%v\0k\0.\0c\0o\0m\0%'

Какой character set вы используете для общения с базой по умолчанию и почему не тот, в котором все строки в базе? (Если у вас в базе строки хранятся в нескольких разных кодировках, срочно к врачу.)

Если connection charset менять нежелательно, попробуйте указать charset литерала, используемого в операциях LIKE или REGEXP:

F>SELECT * FROM urls WHERE url LIKE _ucs2'%vk.com%' COLLATE ucs2_bin
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.