java - 如何在hibernate中使用CreateSqlQuery查询不同的数据库?

标签 java hibernate orm informix

我有以下代码:

Query query = this.getSession().createSqlQuery("select * from db@server:table where 1=1");
List list = query.list();

抛出此错误:

org.hibernate.QueryException: Not all named parameters have been set: [table] [select * from db@server:table where 1=1]

看来:被视为参数前缀。
如何在不同的数据库之间进行查询?目前,我使用的数据库是 informix11

最佳答案

我认为你应该有一个不同的 Hibernate Session Factory 为你拥有的每个数据库生成不同的 session 。

您不能将一个 session 连接到多个数据库。

关于java - 如何在hibernate中使用CreateSqlQuery查询不同的数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8783380/

相关文章:

java - Java中的递归Chudnovsky算法

java - Hibernate无法保存对象

java - 使用 Hibernate 和 PL/SQL 实现进度条

java - 在 EJB-Hibernate 环境中使用 JDBC

LINQ 与 nHibernate

java - 轮盘预测

java - 请求中缺少 token

java - 从 spring MVC Controller 返回 xml 文件

orm - 如何在 Doctrine 2 中丢弃对实体的未刷新更改?

c# - ORM不可知论模式