Forum Webscript.Ru

Общие => Базы данных => Тема начата: Forza от 13 Мая 2004, 00:58:54

Название: MySQL: русские буквы в LIKE
Отправлено: Forza от 13 Мая 2004, 00:58:54
Здравствуйте.

Имеется таблица информации о фильмах, в которой присутствуют столбцы английского и русского (кодировка Win) названий, а также описание.
База - MySQL 4.0.12 под Виндами.

Если я правильно понимаю, то для вывода всех фильмов, начинающихся на русскую букву П и упорядоченных по имени, я могу написать SELECT * FROM dvd WHERE rus_name LIKE \'П%\' ORDER BY rus_name;, да?
Если искать по английским названиям (заменив в запросе rus_name на eng_name и \'П%\' на что-нибудь английское) , то всё работает как и надо. Но при поиске по русскому имени в некоторых случаях в результаты поиска попадают фильмы, начинающиеся на другие буквы (что самое интересное - на соседние по алфавиту: например, в случае с "П" это - Н, О, М), кроме того теряется сортировка по названию.

Подскажите, пожалуйста, как с этим бороться.
Название: MySQL: русские буквы в LIKE
Отправлено: tserbis от 13 Мая 2004, 09:26:41
Прочти здесь - http://tony2001.phpclub.net/faq/mysql.charset.html .
Название: MySQL: русские буквы в LIKE
Отправлено: Forza от 13 Мая 2004, 13:08:44
Большое спасибо, tserbis, за оперативный ответ: изменение кодировки в настройках сервера исправило проблему. :appl:

Интересно было попробовать также и второй вариант, описанный в ссылке:
Цитировать
Начиная с MySQL 4.1, можно задавать кодировку базы данных при ее создании в конструкции CREATE TABLE или изменить позже запросом ALTER TABLE

Но я не нашёл ни на mysql.ru, ни на mysql.com упоминание кодировки в синтаксисе CREATE TABLE.
Название: MySQL: русские буквы в LIKE
Отправлено: tserbis от 13 Мая 2004, 13:43:53
http://dev.mysql.com/doc/mysql/en/CREATE_TABLE.html
As of MySQL 4.1, character column definitions can include a CHARACTER SET attribute to specify the character set and, optionally, a collation for the column. For details, see section 11 Character Set Support.
Название: MySQL: русские буквы в LIKE
Отправлено: Forza от 13 Мая 2004, 14:39:50
Опять спасибо за ссылку. Буду иметь эту возможность в виду.

А я, балда, не нашёл, потому что пытался найти упоминание кодировок в свойствах всей таблицы в целом.