Привет усем.
Чего то конференция хереть начала. Наверное, все ушли на борьбу с мировым
кризисом ... :-)
Вчера, перед тем как отключится, сделал потрясающее открытие. Дарю. Правда,
не знаю кто его тут сможет оценить -
Для работы провайдеров, реализующих ISC API (а-ля fbclient.dll / gds32.dll),
достаточно оперировать такими идентификаторами кодовых страниц
- NONE (ID:0)
- OCTETS (ID:1)
- UNICODE_FSS(ID:3)
- CS_RUNTIME (ID:127)
Если клиент указал кодовую страницу подключений !=NONE, то юзаются
идентификаторы
NONE, OCTETS, CS_RUNTIME, где CS_RUNTIME - подразумевается кодовая страница
подключения (WINxxxx, DOSxxx, ...). Именно в CS_RUNTIME возвращаются
текстовые данные. Реальный идентификатор кодовой страницы подключения, на
который отображается CS_RUNTIME, уже не актуален.
Если устанавливается подключение с использованием NONE, то юзаются
идентификаторы
NONE, OCTETS, UNICODE_FSS. Текстовые данные возвращаются в UNICODE_FSS
Идентификаторы кодовых страниц возвращаются в XSQLVAR::subtype (CHAR,
VARCHAR) и XSQLVAR::sqlscale (текстовые блобы)
Пожалуй, я понял то, ради чего все и затеял :-)
----
Коваленко Дмитрий.