| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 571 人关注过本帖
标题:谁能帮我看一下这段程序哪里有问题????
只看楼主 加入收藏
喜子
Rank: 1
等 级:新手上路
帖 子:20
专家分:0
注 册:2010-11-22
结帖率:40%
收藏
已结贴  问题点数:20 回复次数:4 
谁能帮我看一下这段程序哪里有问题????
题目:删除“客户”表数据时引发的DELETE触发器。
当删除某条客户信息时,同时删除“订单”表中该客户的所有订单。
go
if exists(select name  from sysobjects
      where name='delete_kehu'and type='tr')
    drop trigger delete_kehu
go
create trigger delete_kehu on 客户
for delete
as
if exists(select *
    from deleted
    where 订单.客户id=deleted.客户id)
begin
 delete 订单  
  from 订单,deleted
  where 订单.客户id=deleted.客户id
end
搜索更多相关主题的帖子: 触发器 
2010-12-22 14:53
筱晓绾
Rank: 10Rank: 10Rank: 10
来 自:湖南
等 级:贵宾
威 望:12
帖 子:512
专家分:1736
注 册:2010-9-1
收藏
得分:5 
select *
    from deleted
    where 订单.客户id=deleted.客户id

delete 订单  
  from 订单,deleted
  where 订单.客户id=deleted.客户id
订单.客户id是订单表里面的字段吧.
deleted.客户id是deleted表中的字段.
执行语句时,应该需要对表进行关联...
2010-12-22 15:13
aei135
Rank: 9Rank: 9Rank: 9
等 级:贵宾
威 望:12
帖 子:232
专家分:1176
注 册:2009-4-6
收藏
得分:5 
create trigger delete_kehu on 客户
for delete
as
if exists(select *
    from 订单,deleted
    where 订单.客户id=deleted.客户id)
begin
delete 订单  
  from 订单,deleted
  where 订单.客户id=deleted.客户id
end
2010-12-23 11:41
juejitianya
Rank: 4
等 级:业余侠客
威 望:3
帖 子:44
专家分:272
注 册:2009-9-11
收藏
得分:5 
将函数主题改成下面这样试试:
delete from 订单  
where exists(select * from deleted 订单.客户id=deleted.客户id)
2010-12-23 14:12
qingshuiliu
Rank: 10Rank: 10Rank: 10
等 级:贵宾
威 望:17
帖 子:323
专家分:1538
注 册:2009-12-28
收藏
得分:5 
2,3楼回答的就是我想回答的
2010-12-24 10:40
快速回复:谁能帮我看一下这段程序哪里有问题????
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.021005 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved