假设有如下的级联删除关系,删除A的时候,需要同时删除B,C,D。 
A -> B -> C -> D 
我用的数据库是oracle 
要求是删去A是要删去BCD
删去B是要删去CD删去C是要删去D

解决方案 »

  1.   

    alter table B 
    add constraint constraint_name
    foreign key(column_name) 
    references A(column_name) on delete cascade;其他的表也这样样改吧,column_name表示约束的列名字
      

  2.   

    问题我解决了
    我想在hibeinate进行设计
    <set name="privinces" inverse="true" cascade="all-delete-orphan" lazy="false">
                <key>
                    <column name="COUNTRYID" length="10" not-null="true" />
                </key>
                <one-to-many class="com.ajax.pojo.Privince" />
            </set>
    同时oracle在进行级联删除进行打勾
      

  3.   

    看你把这个实现给谁了,你用hibernate就用你写得那样可以级连删除,数据库庞大的时候,不要把过多的负载都给数据库!