4m@t!c
Александр
Кодировка в MySQL под Виндой
Писал код не заморачиваясь на кодировки в таблицах. Не хотел лезть в Мускул, пока более-менее не буду себя уверено чувствовать в азах РНР. Тут стукнуло мне в голову, Что БД у меня на русском и желательно что бы инфа была на русском.
1. Не нашел четкого механизма работы кодировок - все что нашел - это http://koi8.pp.ru/pos.html. Прочел и все равно не понял. я пишу страницу в PHPEditor, не заморачиваясь, на кодировки. Но что бы передать информацию, я должен знать в какой кодировке пишет тот или иной редактор так что ли? Если так, то у никсов есть понятие локаль, где они задают кодировку и форматы. В винде есть Региональные стнадарты и про кодировку и локаль нет и речи.
подумал, черт с ним. Будем думать что в винде локаль cp1251.
2.Залез в Мускул посомтрел кодировки таблиц - оказалось - latin1_swedish. Взял и поменял на cp1251.
Теперь такая картина
Нашел тред на форуме, что my.cnf не настроит кодировку, как надо. причем я не понял чью кодировку, за Collation вообще речь не шла.
Нужно использовать set names 'cp1251'.
Читал-читал и вычитал, что несмотря на то, что даже если указывать кодировки, то при некоторых манипуляциях нужно указывать кодировки. Как из тех, что дает show variables опять же я не нашел нигде.
Чего-то намудрил с кодировками получилось вообще классно начало выдвать ошибку
И теперь show variables выдает
Где можно прочесть для тех, кто в танке о кодировках, о том, какие настройки за что отвечают, а не так абстрактно как в пункте "4.1.1" маны.
И еще, можно ли все оставить в в latin1 или нет - я так понял, что там есть русские буквы, а когда буду делать запросы, то буду COLLATION'ом задавать порядок сортировки?
З.Ы. Вообщем я расстроился, что я ничерта не понимаю, и что у меня нет мозгов найти нормальные линки на нужные мне темы. Буду признателен за любую помощь.
Писал код не заморачиваясь на кодировки в таблицах. Не хотел лезть в Мускул, пока более-менее не буду себя уверено чувствовать в азах РНР. Тут стукнуло мне в голову, Что БД у меня на русском и желательно что бы инфа была на русском.
1. Не нашел четкого механизма работы кодировок - все что нашел - это http://koi8.pp.ru/pos.html. Прочел и все равно не понял. я пишу страницу в PHPEditor, не заморачиваясь, на кодировки. Но что бы передать информацию, я должен знать в какой кодировке пишет тот или иной редактор так что ли? Если так, то у никсов есть понятие локаль, где они задают кодировку и форматы. В винде есть Региональные стнадарты и про кодировку и локаль нет и речи.
подумал, черт с ним. Будем думать что в винде локаль cp1251.
2.Залез в Мускул посомтрел кодировки таблиц - оказалось - latin1_swedish. Взял и поменял на cp1251.
Теперь такая картина
Решил, что везде должно быть cp1251 - но как это сделать под виндой - я не нашел. Везде, где я читал- примеры под никсы. Как мне сделать все в ср1251?character_set_client - latin1
character_set_connection - latin1
character_set_database - cp1251 character_set_results - latin1
character_set_server - latin1 character_set_system - utf8 character_sets_dir - c:\mysql\share\charsets/
collation_connection - latin1_swedish_ci
collation_database - cp1251_general_ci collation_server - latin1_swedish_ci
Нашел тред на форуме, что my.cnf не настроит кодировку, как надо. причем я не понял чью кодировку, за Collation вообще речь не шла.
Нужно использовать set names 'cp1251'.
Читал-читал и вычитал, что несмотря на то, что даже если указывать кодировки, то при некоторых манипуляциях нужно указывать кодировки. Как из тех, что дает show variables опять же я не нашел нигде.
Чего-то намудрил с кодировками получилось вообще классно начало выдвать ошибку
Ошибку устраняет SET names 'cp1251'[root@localhost:3306] ERROR 1267: Illegal mix of collations (cp1251_general_ci,IMPLICIT) and (latin1_swedish_ci,COERCIBLE) for operation '='
И теперь show variables выдает
как итог -я ничего не понял и окончательно запутался. А теперь вопрос.character_set_client - cp1251
character_set_connection - cp1251
character_set_database - cp1251
character_set_results - cp1251
character_set_server - latin1
character_set_system - utf8
character_sets_dir - c:\mysql\share\charsets/
collation_connection - cp1251_general_ci
collation_database - cp1251_general_ci
collation_server - latin1_swedish_ci
Где можно прочесть для тех, кто в танке о кодировках, о том, какие настройки за что отвечают, а не так абстрактно как в пункте "4.1.1" маны.
И еще, можно ли все оставить в в latin1 или нет - я так понял, что там есть русские буквы, а когда буду делать запросы, то буду COLLATION'ом задавать порядок сортировки?
З.Ы. Вообщем я расстроился, что я ничерта не понимаю, и что у меня нет мозгов найти нормальные линки на нужные мне темы. Буду признателен за любую помощь.