Доброго времени суток. Прошу прощения, если добавил не туда куда надо.
У меня такая проблема. Для примера приведу вот такую таблицу
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 сервера.
Подскажите пожалуйста куда копать...