存储过程!

博主写存储过程处理查询表结果问题花了一下午。要查询若干表、修改结果并返回,发现存储用select语句返回结果,需先创建临时表保存初始结果,遍历修改后返回并删除临时表,还给出了示例代码。
一直没有好好写过存储过程,今天一个看起来很简单的问题,结果写了一下午的存储过程emdgust.gif
要做的是查询若干个表,然后对结果做些修改,最后返回这些结果。本来以为存储返回结果可以写return table之类的,后来才发现都是使用select语句来返回的。这样只能先产生一个临时表来保存最初查询结果,然后遍历做修改,最后返回临时表内容,并删除该表。
None.gifCREATE procedure sp_func
None.gif
as
None.gif
begin
None.gif
None.gif
create table #tmpTable
None.gif(
ExpandedBlockStart.gifContractedBlock.gif
/**//*dot.gif*/
None.gif)
None.gif
declare curTable cursor for
None.gif
--dot.gif
None.gif
open curTable
None.gif
None.gif
while 1=1
None.gif
begin
None.gif    
fetch next from curTable into --dot.gif
None.gif
    if @@fetch_status <> 0
None.gif        
break
ExpandedBlockStart.gifContractedBlock.gif    
/**//*dot.gif*/
None.gif
end
None.gif
None.gif
close curTable
None.gif
deallocate curTable
None.gif
None.gif
select * from #tmpTable
None.gif
drop table #tmpTable
None.gif
None.gif
end
None.gif
None.gif
go
大致上就是这样,对熟手来说这根本不算什么,是最常用的方法。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值