【发布时间】:2015-07-27 16:11:20
【问题描述】:
我有一个项目在 persistence.xml 中使用 JPA 的 <non-jta-datasource> 连接到容器管理的 Oracle 数据源,并且在某些时候我必须使用动态构建的本机查询。默认情况下,在 Oracle 中,我需要在表名中指定 schema 才能进行查询,但我无权访问架构名称(也不应该)。
首先,这是预期的行为吗?如果我执行SELECT * FROM TABLE,Hibernate 是否应该将其重命名为数据源参数并改为执行SELECT * FROM SCHEMA.TABLE?
如果不是,有没有办法以动态方式检索模式名称?即使数据源是由 WebLogic/JBoss 管理的?
【问题讨论】:
-
您需要查询的架构与您登录时使用的架构不同吗?您是否需要查询多个不同的模式?如果没有,您可以创建一个公共同义词。
-
oracle schema == 用于登录/连接的用户名
标签: oracle hibernate jpa datasource hibernate-native-query