MySQL Encoding Issue - Различные результаты от Windows до Linux - PullRequest
3 голосов
/ 17 ноября 2011

У меня есть база данных MySQL, размещенная на сервере Windows.Когда я запрашиваю определенную запись с разных машин Windows, используя консоль mysql, я получаю Päivi (неверно).Когда я запрашиваю одну и ту же запись с разных машин * nix с помощью консоли mysql, я получаю Päivi (правильно).Я использую простой запрос SELECT firstname FROM users WHERE id = 12345;.

Моя сортировка базы данных - utf8, сортировка полей - utf8, и я пытался использовать set names 'utf8'; до выполнения моих запросов.

Почему машины Windows возвращали бы другой результат?В окнах могут отсутствовать определенные символы?Это нормальное / ожидаемое поведение?Я не специалист по кодированию и языку, поэтому любая обратная связь будет полезна.

Ответы [ 2 ]

2 голосов
/ 17 ноября 2011

После подключения к серверу из консольного клиента MySQL введите следующую команду, чтобы просмотреть текущий набор символов клиента:

status;

Чтобы установить его, используйте следующую команду:

set names latin1;
0 голосов
/ 17 ноября 2011

Я не уверен, что консоль Windows все еще является многобайтовой, используя кодовую страницу ANSI. Если так, то это будет проблемой. Результаты могут быть правильными, но консоль отображает их неправильно.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...