【发布时间】:2018-06-21 01:09:29
【问题描述】:
我的设置:
我正在使用休眠 5
使用 Oracle JDBC 驱动程序 oracle.jdbc.driver.OracleDriver 和方言 org.hibernate.dialect.Oracle9iDialect。
我的模型类如下所示:
@Entity
@Table(name = "MyModel1", catalog = "DB1")
public class MyModel1 {...}
@Entity
@Table(name = "MyModel2", catalog = "DB2")
public class MyModel2 {...}
我的问题: 我有多个模型类,它们分布在同一个数据库服务器上的不同数据库上。 我必须使用单个 DB 连接来查询我的所有模型类,所以我连接到 DB1 进行查询。 一切都会好起来的,如果 Hibernate 会生成类似的 SQL 查询
select * from DB1.MyModel1;
但事实并非如此。由于某种原因,它在没有目录的情况下进行查询,即。
select * from MyModel1;
这对 MyModel1 很好,因为我连接到 DB1,但我需要对 MyModel2 进行完全限定的查询,否则会引发异常,因为在 DB1 中找不到 MyModel2 的表。
您知道有什么方法可以欺骗 Hibernate 或 JPA 或方言使用完全限定的表名构建查询吗?
【问题讨论】: