关于hibernate的级联删除问题
配置文件代码<classname="com.et.pojo.BigType"table="tb_bigtype"><idname="id"type="java.lang....
配置文件代码
<class name="com.et.pojo.BigType" table="tb_bigtype">
<id name="id" type="java.lang.Integer">
<column name="id"/>
<generator class="increment"/>
</id>
<property name="bigName" type="java.lang.String">
<column name="bigName"/>
</property>
<property name="createTime" type="java.sql.Date">
<column name="createTime"/>
</property>
<set name="smallTypes" inverse="true" cascade="all" lazy="false">
<key column="bigId"></key>
<one-to-many class="com.et.pojo.SmallType"/>
</set> </class>
加了cascade=“all”,还是无法级联进行删除,提示外键问题,
Cannot delete or update a parent row: a foreign key constraint fails,烦请高手帮忙 展开
<class name="com.et.pojo.BigType" table="tb_bigtype">
<id name="id" type="java.lang.Integer">
<column name="id"/>
<generator class="increment"/>
</id>
<property name="bigName" type="java.lang.String">
<column name="bigName"/>
</property>
<property name="createTime" type="java.sql.Date">
<column name="createTime"/>
</property>
<set name="smallTypes" inverse="true" cascade="all" lazy="false">
<key column="bigId"></key>
<one-to-many class="com.et.pojo.SmallType"/>
</set> </class>
加了cascade=“all”,还是无法级联进行删除,提示外键问题,
Cannot delete or update a parent row: a foreign key constraint fails,烦请高手帮忙 展开
2个回答
展开全部
如果你是想删除BigType表里的数据同时删除外键指向该数据的SmallType表里的数据,这样写是没问题的,报错的原因可能是BigType表里的数据有外键指向了其他表,所以删除不成功。
追问
嗯,BigType表里就三个字段,主键id,bigName,和创建时间三个字段,smallType里有个外键bigId,引用的是bigtype表里的主键id,我现在想在删除bigtype表里数据的同时,去级联删除smalltype表里bigid对应的数据,bigtype表里面没有外键和其他表进行关联
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询