hibernate - Postgres-目标列表最多可包含1664个条目

时间:2010-03-10 15:12:40

标签: hibernate postgresql orm

我们正在使用hibernate,postgres 8.3x

我们的实体是多对一映射的,具有热切的提取功能。 我们有多对一的映射。

当我们向任何其他现有实体添加新列时, 我们收到以下错误:

目标列表最多可包含1664个条目

我搜索了互联网,他们说这是由于 sql查询中更多的select语句(由hibernate生成)

如果有任何配置,请告诉我们(在postgres中) 更新配置或任何其他解决方案中的最大数量列以解决此问题。

提前谢谢。

4 个答案:

答案 0 :(得分:1)

您的模型/映射/查询肯定存在错误。解决这个问题的正确方法是处理你的模型/映射/查询,而不是PostgreSQL中的最大列数(我甚至得不到你如何达到它,一个检索1664+列的查询不会义)。

答案 1 :(得分:1)

尝试

      <property name="hibernate.max_fetch_depth" value="25"/>

答案 2 :(得分:0)

这是PostgreSQL中的最大列数,这是正确的。但为什么你需要更多的列?只是做一些规范化,你的问题就消失了。或者根本不使用关系数据库,当你不规范化时,你总是会达到最大列数。

答案 3 :(得分:0)

有时在项目中有太多@ManyToOne(fetch = FetchType.EAGER)时会发生这种情况。 所以,当没有必要使用FetchType.EAGER时,请输入@ManyToOne(fetch = FetchType.LAZY)

这对我有帮助,试试!