#ifndef UNICODE
# define PSQL_CHAR SQL_C_CHAR
#else
# define PSQL_CHAR SQL_C_WCHAR
#endif
Почему ODBC возвращает строки в Unicode?
Собственно, сабж :))
В документации написано, что Driver Manager должен автоматически преобразовывать все данные в кодировку клиентской программы. А программа у меня обычная ANSI, non-Unicode, Windows-1251.
Код:
и
Код:
#ifdef UNICODE
# define PSQL_CHAR SQL_C_CHAR
#else
# define PSQL_CHAR SQL_C_WCHAR
#endif
# define PSQL_CHAR SQL_C_CHAR
#else
# define PSQL_CHAR SQL_C_WCHAR
#endif
Короче, это я был на 100% уверен, что используется тип SQL_C_CHAR, а на самом деле использовался SQL_C_WCHAR - его Unicode'ный аналог :)))
Всем спасибо за внимание! Желаю так не попадаться :)))
Цитата:
Оцените два куска кода и найдите 10 отличий:
Во втором используется условие "ЕСЛИ ОПРЕДЕЛЕНО", а в первом "ЕСЛИ НЕОПРЕДЕЛЕНО".
Именно по этому я никогда не использую #ifdef и #ifndef, а пишу #if defined - не ошибёшся :D