oracle - JDBC 瘦驱动程序的 NLS_LANG 设置?

标签 oracle jdbc nls ora-12705

我使用的是 10.2.0 版 (ojdbc14.jar) 的瘦 Oracle JDBC 驱动程序。我想手动配置其 NLS_LANG 设置。有办法吗?

当前,它从 VM 变量 user.language(通过设置当前语言环境或从系统环境启动时自动设置)获取此设置。

当用户将应用程序语言环境切换到 Oracle JDBC 驱动程序(例如 mk_MK)不支持的语言环境时,这是一个问题。在这种情况下,下次我获取连接时,我会收到以下异常:

ORA-00604: 递归 SQL 级别 1 发生错误
ORA-12705: 无法访问 NLS 数据文件或指定的环境无效

我可以在获取连接之前即时更改语言环境并来回切换回用户选择的语言环境,但这似乎不优雅且效率低下。

最佳答案

NLS_LANG 设置源自 java.util.Locale 。因此,您需要在连接之前进行类似的调用:

Locale.setDefault(Locale.<your locale here>);

关于oracle - JDBC 瘦驱动程序的 NLS_LANG 设置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1079985/

相关文章:

oracle - (又一个) "Missing Right Parenthesis"

oracle - 在 Tomcat、JDBC 和 Eclipse 环境中工作时无法为类型解析连接

r - nls最合适的线-如何强制绘制线?

r - qqplot + stat_smooth 错误

oracle - DDL Oracle 到 Postgres 的转换

database - 关于 dbms_stats.gather_table_stats 的问题

sql - 从SQL中的一个左属性中获取多个属性

java - 使用 JDBC 连接到 Openshift 数据库

java - 如何使用jdbc在swing中用另一个字段替换外键?

r - 具有五个参数的非线性模型 (w/nls R)