java - @CascadeOnDelete 和 CascadeType.REMOVE 注解有什么区别?

标签 java sql jpa eclipselink

起初我期望使用 CascadeType.REMOVE 我将能够删除表中的外键,但我仍然遇到异常。但是用@CascadeOnDelete就可以了。这两个注解有什么区别呢?

编辑: 我看到了 DataNucleus 的评论。删除级联来自 org.eclipse.persistence.annotations.CascadeOnDelete。这提出了一个问题,这个想法有多好将被使用。

最佳答案

当您使用 CascadeType.Remove 时,级联将由 ORM 工具处理,但当您希望级联由数据库处理时,您可以使用 @CascadeOnDelete。但是当您使用 @CascadeOnDelete 时,请确保您使用的数据库应支持级联。

关于java - @CascadeOnDelete 和 CascadeType.REMOVE 注解有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13507445/

相关文章:

java - MySQL/Java特定字段审计

MySQL:何时分解/分割表

java - JPA:如何从另一个模式生成实体?

java - 编辑实体而不执行@PreUpdate方法

java - JPA RollbackException 但不在单元测试中

java - WildFly 8 和 Log4j 2 的 log4j-web 模块

java - 如何在 spring 中使用外部属性禁用 ehcache

java - Android - 如何将接口(interface)传递给AsyncTask

sql - 替换日期的某一部分

php - 是否可以?!给 Paypal 动态下拉菜单项一个动态名称