如何在休眠中使用 CreateSqlQuery 查询不同的数据库?

Posted

技术标签:

【中文标题】如何在休眠中使用 CreateSqlQuery 查询不同的数据库?【英文标题】:How to query different databases using CreateSqlQuery in hibernate? 【发布时间】:2012-01-09 02:41:51 【问题描述】:

我有以下代码:

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

引发此错误:

org.hibernate.QueryException:并非所有命名参数都已设置: [table] [select * from db@server:table where 1=1]

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

【问题讨论】:

【参考方案1】:

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

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

【讨论】:

以上是关于如何在休眠中使用 CreateSqlQuery 查询不同的数据库?的主要内容,如果未能解决你的问题,请参考以下文章