Java 了解实体映射到数据库视图的删除或更新

Java 了解实体映射到数据库视图的删除或更新,java,hibernate,jpa,oracle10g,jpa-2.0,Java,Hibernate,Jpa,Oracle10g,Jpa 2.0,我对使用Hibernate更新或删除数据库视图中的行有疑问 我有以下实体 @Entity @Table(name = "V_EMPLOYEES") ..... V_EMPLOYEES是用于连接两个表的数据库视图 在DAO类中,我删除了一行 entityManager.remove(entityManager.merge(employees)); 基于以上内容,我可以基于主键成功删除一行 由于我在实体类中映射了一个视图,如何成功地从表中删除一行?因为根据Hibernate常见问题解答- 任何输

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

我有以下实体

@Entity
@Table(name = "V_EMPLOYEES")
.....
V_EMPLOYEES
是用于连接两个表的数据库视图

在DAO类中,我删除了一行

entityManager.remove(entityManager.merge(employees));
基于以上内容,我可以基于主键成功删除一行

由于我在实体类中映射了一个视图,如何成功地从表中删除一行?因为根据Hibernate常见问题解答-

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


我的Hibernate版本
4.1.0 Final

哦,实际上,对于某些类型的数据库,您可以从视图中插入甚至删除数据,例如Mysql,这是一个很好的问题。但是视图应该有一些特殊的特性,例如视图应该包括1个表中的所有列。操作能否正常运行取决于数据库引擎,而不是hibernate。

我使用Oracle作为数据库,正如您提到的,数据库视图起作用,hibernate是透明的。是的,这是我的意思。但我不知道Oracle view的逻辑,如果你有想法,请告诉我。谢谢。看,由于我的数据库视图统计了这些条件,Hibernate并没有抱怨它是表还是视图。和甲骨文