首页 > 解决方案 > 如何将字段作为键添加到休眠更新语句

问题描述

我正在使用 postgres 9.4 并且有一个日期范围分区表。表上的主键是id。这些表在一​​个名为 的字段上进行分区create_date。我们使用插入触发器插入分区,该触发器查看create_date字段并将其写入适当的分区。

我们将 Hibernate 4.3.11 用于 ORM。要更新表中的数据,我们正在使用该EntityManager::merge方法。我想在Hibernate 生成的 SQLcreate_dateWHERE子句中添加 。update

例如,现在我的更新看起来像: UPDATE my_table SET col1 = $1 where id = $2

为了在我的update语句中进行分区修剪,我希望我的查询看起来像这样: UPDATE my_table SET col1 = $1 where id = $2 and create_date = $3

有什么方法可以用 Hibernate 完成这个吗?

标签: javapostgresqlhibernateorm

解决方案


推荐阅读