首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • 删除主表的数据是只清空从表相应的字段怎么做? [已结贴,结贴人:wai631]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 15:53:14 楼主
    我想建一个级联,删除主表的数据时只清空从表相应的字段怎么做
    ,删除动作是用级联做的

    如:
    A主表

    Aid  nanme
    001    sa

    B从表
    Bid  Bnanme  Aid
    100    Bsa    001

    C从表

    Cid  Cnanme  Aid
    1    Csa    001

    现在我想删除A表001时,删除B表100,但是C表中只清空Aid这字段不删除1数据 (C.Aid=null)

    用级联怎么做?


    若没描述清楚请多担待


    10  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 15:56:001楼 得分:10
    SQL code
    create trigger trigger_name on A主表 for delete as set nocount on update B从表 set Aid=null from B从表 a join deleted b on a.Aid=b.Aid update C从表 set Aid=null from C从表 a join deleted b on a.Aid=b.Aid set nocount off go
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 15:56:202楼 得分:0
    触发器
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 15:57:023楼 得分:0
    用触发器行不?级联清空好象做不了
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 16:04:384楼 得分:0
    级联好像可以吧!怎么set 什么的  忘记了!
    等明天,大家都认为级联搞不定就用触发器吧
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 18:01:475楼 得分:0
    引用 1 楼 Limpire 的回复:
    SQL codecreate trigger trigger_name
    on A主表
    for delete
    as
    set nocount on
    update B从表 set Aid=null from B从表 a join deleted b on a.Aid=b.Aid
    update C从表 set Aid=null from C从表 a join deleted b on a.Aid=b.Aid
    set nocount off
    go

    投一票先
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 18:09:226楼 得分:0
    关注
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-12 12:44:447楼 得分:0
    用级联真的不能做到?
    修改 删除 举报 引用 回复

    网站简介广告服务网站地图帮助联系方式诚聘英才English 问题报告
    世纪乐知(北京)网络技术有限公司 版权所有 京 ICP 证 020026 号
    Copyright © 2000-2007, CSDN.NET, All Rights Reserved