2

我对使用 Hibernate 从数据库视图中更新或删除行有疑问

我在实体中有以下内容

@Entity
@Table(name = "V_EMPLOYEES")
.....

V_EMPLOYEES是用于连接两个表的数据库视图

在 DAO 类中,我删除了一行

entityManager.remove(entityManager.merge(employees));

基于以上,我可以成功删除基于主键的行。

当我在 Entity 类中映射了一个视图时,如何成功地从表中删除一行?因为根据 Hibernate FAQ - 视图就像任何其他表一样(除了您可能无法更新或插入视图)

任何输入或见解都是非常可观的。

我的休眠版本4.1.0 Final

4

1 回答 1

1

哦,其实有个很好的问题,对于某些可以插入甚至删除视图中的数据的数据库,例如 Mysql。但是视图应该有一些特殊的功能,例如视图应该包括来自 1 个表的所有列。该操作是否可以工作取决于数据库引擎是否休眠。

于 2013-03-19T11:33:58.167 回答