parser

Написать ответ на текущее сообщение

 

 
   команды управления поиском

Ответ

Misha v.3 30.05.2006 13:41

чтобы загрузить данные из dump надо в начале этого dump написать:
SET CHARACTER SET cp1251;

с кодировками у вас запущено, смотрите:
character_set_connection utf8
character_set_database cp1251
character_set_results utf8
это означает что в вашей БД данные храняться в кодировке windows 1251, но SQL сервер ожидает что клиент ему их будет передавать в UTF-8 (и соотвт. он отдает их тоже в UTF-8)

варианты как поправить ситуацию:
1. в каждом соединении с сервером выполняйте SET CHARACTER SET cp1251, никаких параметров в строке соединения добавлять не надо.

2. укажите ClientCharset=UTF-8 (можно пересоздать БД с кодировкой UTF-8, при этом в БД все будет храниться в UTF-8) и парсер вам будет делать перекодировки туда/обратно. в слечае если не пересоздавать БД, то будет делаться одно преобразование парсером, и одно - сервером, что не есть хорошо. Если пересоздать, то делаться будет только одно преобразование (парсером, что тоже не очень хорошо но лучше)

3. так же можете настроить
SET character_set_client = x;
SET character_set_results = x;
SET character_set_connection = x;
http://dev.mysql.com/doc/refman/5.0/en/charset-connection.html