登陆 免费注册 提交网站
站长资讯 >> 站长学院 >> 数据库类
 2008-03-30 23:03浏览: 3070 次

带你快速了解“存储过程”的定义及优点(二)

例: 若用户想建立一个删除表tmp中的记录的存储过程Select_delete可写为:

以下内容为程序代码:
Create Proc select_del As 

Delete tmp 

例:用户想查询tmp表中某年的数据的存储过程

以下内容为程序代码:
create proc select_query @year int as

select * from tmp where year=@year

在这里@year是存储过程的参数

例:该存储过程是从某结点n开始找到最上层的父亲结点,这种经常用到的过程可以由存储过程来担当,在网页中重复使用达到共享。

空:表示该结点为顶层结点

fjdid(父结点编号) 

结点n 非空:表示该结点的父亲结点号

dwmc(单位名称)

以下内容为程序代码:
CREATE proc search_dwmc @dwidold int,@dwmcresult varchar(100) output

as 

declare @stop int

declare @result varchar(80)

declare @dwmc varchar(80)

declare @dwid int

set nocount on

set @stop=1

set @dwmc=""

select @dwmc=dwmc,@dwid=convert(int,fjdid) from jtdw where id=@dwidold 

set @result=rtrim(@dwmc)

if @dwid=0 

set @stop=0

while (@stop=1) and (@dwid<>0)

begin

set @dwidold=@dwid

select @dwmc=dwmc,@dwid=convert(int,fjdid) from jtdw where id=@dwidold

if @@rowcount=0 

set @dwmc=""

else

set @result=@dwmc+@result

if (@dwid=0) or (@@rowcount=0) 

set @stop=0

else

continue

end

set @dwmcresult=rtrim(@result)

使用exec pro-name [pram1 pram2.....]
网站首页 - 关于我们 - 联系我们 - 友情链接 - 帮助中心
Copyright ©2007-2022 www.Aisila.com All Rights Reserved
苏ICP备20008864号-4