powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / JDBC connection to Oracle
9 сообщений из 9, страница 1 из 1
JDBC connection to Oracle
    #39686733
ArchiSQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Подскажите, плиз,
пытаюсь установить JDBC коннекшн к Oracle, выводит эррор ora-12705.
Погуглил, дело в локали.
Дописал Locale.setDefault(Locale.ENGLISH); перед открытием соединения. Все заработало.
По дефолту стоит ru_RU (вывожу принтлном Locale.getDefault()).
Как изменить значение этой локали? Стоит Win 7.
Через аргументы и Locale.setDefault(Locale.ENGLISH) как здесь описано не хочется:
https://stackoverflow.com/questions/8809098/how-do-i-set-the-default-locale-for-my-jvm
Пробовал Пусть -> Панель управления -> Часы, язык и регионы -> язык и региональные стандарты -> Дополнительно -> под "язык программ, не поддерживающих Юников" жму Изменить язык системы, меняю на Английский, перезагружаю. Не работает. Пробовал переустановить JDK - также не работает.
Откуда JVM берет настройки локали? Это происходит при установке?
Спасибо.
...
Рейтинг: 0 / 0
JDBC connection to Oracle
    #39686744
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
в качестве сервера небось Oracle XE ?

Читать JDBC гайд от Oracle все связанное с NLS_LANG (точнее не подскажу)
...
Рейтинг: 0 / 0
JDBC connection to Oracle
    #39686746
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
p.s. В подфоруме Oracle переодически такая проблема. Я так понимаю, Oracle XE не все комбинации в NLS_LANG понимает. Ряд комбинаций допустимых для "нормальных" версий. в Oracle XE не работает. Нужно разбираться какой NLS_LANG из понимаемых Oracle XE Вам требуется и как его указать в JDBC соединение (подозреваю так же, как для обычного приложения. Или через переменную окружения или через registry. Но лучше точно посмотреть в доке).
p.p.s. С Oracle XE ни разу не работал.
...
Рейтинг: 0 / 0
JDBC connection to Oracle
    #39686825
ArchiSQL
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Leonid Kudryavtsev, да, поставил XE в учебных целях.
Мне непонятно одно - когда я изменяю локаль JVM (Locale.setDefault(Locale.ENGLISH)), коннекшен устанавливается. Тогда причем здесь настройки СУБД?
Можно перефразировать задачу - как сделать так, чтобы Locale.getDefault() давало значение не "ru_RU", а Locale.ENGLISH, но не через код и аргументы. Я читал, что из языка системы. Я его поменял, переустановил JDK, но все равно локаль не изменилась.....
...
Рейтинг: 0 / 0
JDBC connection to Oracle
    #39686903
Фотография Petro123
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ArchiSQLЯ читал, что из языка системы. Я его поменял, переустановил JDK, но все равно локаль не изменилась.....
Набрать в линуксе locale
?
...
Рейтинг: 0 / 0
JDBC connection to Oracle
    #39686905
Partisan M
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ArchiSQLМожно перефразировать задачу - как сделать так, чтобы Locale.getDefault() давало значение не "ru_RU"

Сделать можно, но это деяние бессмысленное.

авторПробовал Пусть -> Панель управления -> Часы, язык и регионы -> язык и региональные стандарты -> Дополнительно -> под "язык программ, не поддерживающих Юников" жму Изменить язык системы, меняю на Английский, перезагружаю. Не работает.

Работает, только делает не то, чего вы добивались. Локальная установка - в региональных стандартах. Но и там её менять не нужно.

авторПробовал переустановить JDK - также не работает.

Бессмысленное деяние.

авторпоставил XE в учебных целях.

Можно ставить полную версию Oracle - для обучения и разработки она бесплатна. Ещё надо установить Oracle SQL Developer.

авторТогда причем здесь настройки СУБД?

Вообще-то при установке Oracle задаётся кодировка и язык базы. Возможно, вы забыли указать (кодировку надо выбирать UTF-8, в Oracle для этого есть вариант AL32UTF8, а язык - русский). Проверить настройку на язык можно SQL командой

SELECT userenv('language') FROM DUAL

При наиболее подходящей для русского языка настройке базы результат будет:
RUSSIAN_RUSSIA.AL32UTF8
...
Рейтинг: 0 / 0
JDBC connection to Oracle
    #39686921
Leonid Kudryavtsev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Не сталкивался. Т.ч. ничего сказать не могу.

1. по Oracle XE. Для учебы я бы все таки брал обычный Oracle. Что бы меньше проблем было
2. по JRE. Откуда и как определяется Locale, не знаю, не интересовался
...
Рейтинг: 0 / 0
JDBC connection to Oracle
    #39687151
Garrick
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ArchiSQL,
какие файлы в качестве JDBC драйвера используете?
...
Рейтинг: 0 / 0
JDBC connection to Oracle
    #39687178
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ArchiSQL, локаль для твоего приложения ты можешь указывать в консоли запуска java.
Это параметры user.language, country, variant.

OracleXE - это просто демо возможностей. Его не используют в нормальных разаработках.
И лучше с ним не связываться. Одно горе и разочарование.
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / JDBC connection to Oracle
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]