Задавайте вопросы, мы ответим
Вы не зашли.
Возникла необходимость при полнотекстовом поиске искать слова с тире (по умолчанию символ "-" является логическим операторым и не считается символом).
Мануал по этому поводу говорит:
Modify a character set file: This requires no recompilation. The true_word_char() macro uses a “character type” table to distinguish letters and numbers from other characters.. You can edit the contents in one of the character set XML files to specify that '-' is a “letter.” Then use the given character set for your FULLTEXT indexes.
Вот только где находится этот character set file гугл не знает Кто то сталкивался с подобным?
Спасибо
Неактивен
Неактивен
Ага, эту директорию я посетил еще в самом начале своих поисков… нашел там индексный файл с описанием всех кодировок.
Неактивен
заглянул в значения переменных.
character set client utf8
(Глобальное значение) latin1
character set connection utf8
(Глобальное значение) latin1
character set database latin1
character set filesystem binary
character set results utf8
(Глобальное значение) latin1
character set server latin1
character set system utf8
character sets dir /usr/share/mysql/charsets/
collation connection utf8_general_ci
(Глобальное значение) latin1_swedish_ci
collation database latin1_swedish_ci
collation server latin1_swedish_ci
на основе этого решил редактировать данные для latin1.. с картой вроде разобрался, вот только никакого эффекта изменения не принесли.. Такое ощущение что таки не то правлю
Неактивен
Временно решил проблему разделением строки с "-" на 2 подстроки
К примеру "Нью-Йорк" меняем на "+Нью+Йорк" (логический оператор + указывает на необходимость появления следующего слова в результате). Получается в принципе тоже самое.. но всеже хочется более изящного решения
Неактивен
В MySQL есть кодировки в файлах и кодировки встроенные. Встроенные кодировки
Вы никак не сможете отредактировать, к сожалению
По сути, все многобайтные кодировки являются встроенными (из-за сложных правил
обхода символов).
В качестве решения — попробуйте брать в кавычки: "Нью-Йорк".
И символ «-» — это дефис (простите за буквоедство)
Неактивен