活动有层级结构,一个活动最多只有一个所属上级活动。当父活动删除时,子活动则随之删除。
类似这样的无限层级结构的删除语句怎么写,用存储过程还时触发器?

解决方案 »

  1.   

    create table cat_tb
    (
      cat_id int primary key,
      cat_name varchar(20)
    )
    go
    insert into cat_tb values(100,'数码电子')
    insert into cat_tb values(200,'化妆品')
    insert into cat_tb values(300,'家具')
    gocreate table sub_tb
    (
     sub_id int primary key,
     sub_name varchar(20),
     cat_id int foreign key(cat_id) references cat_tb(cat_id) ON DELETE CASCADE ON UPDATE CASCADE
    )
    go
    DROP TABLE sub_tb,cat_tb
      

  2.   

    用CTE查出子节点 然后删除可以把这个写在触发器中