有关存储过程的问题

gooyan 2002-07-28 06:34:43
帮我写一存储过程:
表:科室ID(ksid),科室名称(ksmc),和上一级联系(uplink)
数据例如:
ksid ksmc uplink
1,一级科室,0
2,二级科室,1
3,三级科室,2
类似的数据,当我要删除某个科室的时候,连其下面的科室也一起删除,写一个删除的存储过程
谢谢
...全文
8 点赞 收藏 6
写回复
6 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
various 2002-07-28
循环是可以用的以前做课程设计时,存储学生考试成绩时就是用的

回复
nice90 2002-07-28
另外,可能你的表里的下级科室可能很多。我这样写肯定不是最佳的,我不知道在存储过程里面是否可以使用循环,希望高手们能够指点一二。
回复
nice90 2002-07-28
Create Procedure SP_DelLink
@ksid int,
@ksmc varchar(8),
@uplink int
@isValid char(4) output
AS
if not exists(select ksid from kstable where ksid=@ksid+1)
begin
delete from kstable where ksid=@ksid
select @isvalid="good"
end
else
if not exists(select ksid from kstable where ksid=@ksid+2)
begin
delete from kstable where ksid=@ksid+1
delete from kstable where ksid=@ksid
select @isvalid="good"
end
else
begin
delete from kstable where ksid=@ksid+2
delete from kstable where ksid=@ksid+1
delete from kstable where ksid=@ksid
select @isvalid="good"
end
select @isvalid="bad"
return

不知道这个存储过程对不对,我写这个的时间不长。只是我写过类似的存储过程。
其中kstable是你的表名。
敬请参考,谢谢!
回复
gooyan 2002-07-28
那些数据是在一个表中,应该用到数据结构中的树的遍历把,但我不知道该如何写存储过程,我不熟!sos,快帮我啊
回复
cmsoft 2002-07-28
回楼上:触发器也是一个特殊的存贮过程啊
回复
lanying 2002-07-28
因该是个触发器吧?
回复
发动态
发帖子
ASP
创建于2007-09-28

2.8w+

社区成员

ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
申请成为版主
社区公告
暂无公告