Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/jpa/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql OneToOne即使在级联All上也无法删除_Mysql_Hibernate_Jpa - Fatal编程技术网

Mysql OneToOne即使在级联All上也无法删除

Mysql OneToOne即使在级联All上也无法删除,mysql,hibernate,jpa,Mysql,Hibernate,Jpa,我在尝试删除onetoone时遇到问题。 因此,我想删除与PageImage具有一对一关系的“Page”对象,但如果失败,则说明由于“Page_IMAGES__PAGES_FK”的原因,这是不可能的 现在,我真的不明白这里的问题是什么,我正在使用cascade all Hibernate4.1+Spring3.1+Mysql @Entity @Table(name = "PAGES") public class Page .... @NotNull @BatchSize(size = 200)

我在尝试删除onetoone时遇到问题。 因此,我想删除与PageImage具有一对一关系的“Page”对象,但如果失败,则说明由于“Page_IMAGES__PAGES_FK”的原因,这是不可能的

现在,我真的不明白这里的问题是什么,我正在使用cascade all

Hibernate4.1+Spring3.1+Mysql

@Entity
@Table(name = "PAGES")
public class Page
....
@NotNull
@BatchSize(size = 200)
@OneToOne(mappedBy = "page", fetch = FetchType.LAZY, cascade = CascadeType.ALL, optional = false)
public PageImage getImage() {
    return image;
}
....


@Entity
@Table(name = "PAGE_IMAGES"

@NotNull
    @OneToOne(fetch = FetchType.LAZY, optional = false)
    @JoinColumn(name = "PAGE_ID", nullable = false, updatable = false)
    @ForeignKey(name = "PAGE_IMAGES__PAGES_FK")
    public Page getPage() {
        return page;
    }

entityManager.remove(myPage)失败,但在映射页面中出现异常“约束失败”

自mappedBy=“page”以来,Image是关系的所有者

因此,你必须: 页面具有对pageImage的引用 pageImage具有对页面的引用


您试图删除这些子项,因此出现异常。很可能,如果您尝试删除页面图像,它就会正常工作

删除不必要的关联,用于删除级联。不必要的关联是什么意思?Cascade=All不应该完成所有工作(同时删除页面图像)?感谢您确保您在DB表中提供了关于删除的级联。