【发布时间】:2011-07-14 15:28:05
【问题描述】:
在我公司的产品中,我们一次从数据库中检索一个页面的结果。因此,所有过滤和排序都必须在数据库上完成。问题之一是编码值。为了使过滤和排序正常工作,代码值需要在查询中转换为特定于语言环境的标签。
我的计划是使用类似于以下的表格: t_code_to_label ( 输入 varchar2(10), 语言环境 varchar2(10), 代码 varchar2(10), 标签 varchar2(50) ) 前三列是主(唯一)键。
当使用这个表时,你会看到这样的东西
select ent.name, ent.ent_type, entlabel.label as ent_type_label
from t_entitlements ent
join t_code_to_label entlabel on entlabel.type='entlabel' and entlabel.locale=currentLocale() and entlabel.code=ent.ent_type
问题是 currentLocale() 是我编造的。我如何在 JDBC 连接的 Java 端做一些事情来设置我拥有的 Connection 对象的语言环境,我可以在 Oracle 端通过一个简单的函数读取该对象。理想情况下,这是 Oracle 真正支持的语言环境,但我找不到这样的东西。
我正在使用 Oracle 10g 和 11g。
【问题讨论】:
标签: oracle jdbc database-connection locale