У меня есть база данных Oracle 11, к которой я подключаюсь, используя как JDBC, так и ODBC. JDBC работает хорошо, но в ODBC все польские буквы в SELECT
результат изменяется на латинский, например ą
->a
, Ó
->O
и т. Д. Я тестировал его с помощью своего приложения и простой программы Python, которая использует модуль odbc
. Такое же значение из базы данных возвращается как:Oracle ODBC: почему национальные символы изменены на латинский эквивалент в результате результата SELECT
ZAMOŚĆ - by JDBC
ZAMOSC - by ODBC
Моя среда:
сервер БД: Oracle Database 11g Release 11.2.0.1.0 - 64bit Производство
Машина клиента:
- Windows Server 2008 R2 64 бит
- Заказчики Oracle в 32-битных и 64-разрядных версиях:
c:\Oracle\Ora1120_32bit
иc:\Oracle\Ora1120_64bit
- ODBC менеджер отчетов Oracle версии драйвера, как: 11.02.00.01
Я думаю, что все локали установлены в Польше/польский, но они не видны от SET
утилиты командной строки.
Кто-нибудь знает, что определяет ODBC или окружающая среда для перевода польских букв на латинские эквиваленты?
Какова ценность вашего NLS_LANG? поскольку вы находитесь в окнах, он установлен в реестре (вероятно, HKEY_LOCAL_MACHINE -> ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ -> ORACLE -> YOUR_HOME -> NLS_LANG) –