The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Проблема с кодировкой в MySQL, !*! silent79, 09-Ноя-10, 20:40  [смотреть все]
Доброго времени суток. Прошу прощения, если добавил не туда куда надо.
У меня такая проблема. Для примера приведу вот такую таблицу
CREATE TABLE `fillist` (
  `id` int(15) NOT NULL AUTO_INCREMENT,
  `pref` varchar(3) DEFAULT NULL,
  `prefid` varchar(2) DEFAULT NULL,
  `fil` varchar(100) DEFAULT NULL,
  `del` int(11) DEFAULT NULL,
  PRIMARY KEY (`id`),
  KEY `prefid` (`prefid`),
  KEY `del` (`del`)
) ENGINE=MyISAM AUTO_INCREMENT=4 DEFAULT CHARSET=cp1251;

Сервер 5.1.52-community, установлена кодировка cp1251. Использую MyODBC 5.1.52. Подключаюсь к БД из СУБД Visual FoxPRO.

В настройках ODBC также установлена кодировка cp1251.

И теперь запрос.
select concat(pref,id) as pref, fil from fillist
на выходе получаю вот такое
pref    fil
??-1    Отдел проектирования
??-2    Пробный отдел
??-3    Отдел автоматизации

Потом в настройках ODBC меняю кодировку на latin1 и отрабатываю тот же самый запрос, и получаю
pref    fil
ПП-1    ????? ??????????????
УК-2    ??????? ?????
ВД-3    ????? ?????????????

Вот такая у меня проблема, т.е. везде, где использую concat(), причем данные разного типа происходит такая бяка. И не могу понять где проблема, или в настройках драйвера ODBC, или в настройках самого MySQL сервера.

Подскажите пожалуйста куда копать...

  • Проблема с кодировкой в MySQL, !*! PavelR, 21:53 , 09-Ноя-10 (1)
    • Проблема с кодировкой в MySQL, !*! silent79, 22:12 , 09-Ноя-10 (2)
      > Прекратите выставлять latin1 в настройках ODBC

      :) если внимательно посмотреть на мое сообщение, то там видно в чем проблема. В первом случае используется кодировка cp1251 и первый столбец получается из concat(pref,id), а второй просто поле из таблицы. в первом столбце получаются данные типа ??-1, а во втором то, что надо.

      Когда меняю кодировку на latin1 в настройках ODBC, то выборка получается наоборот - первый столбец как надо, а второй "вопросиками"





Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру