SQL Server 存储过程中的循环语句,写的不对,就是想proc_a这个存储过程第一次执行@a=1,第二次执行就为2

依次类推,应该如何修改下面的语句能达到这个效果例如下面的语句CREATEPROCEDUREproc_adeclare@numint=0declare@aintset@a=... 依次类推,应该如何修改下面的语句能达到这个效果
例如下面的语句
CREATE PROCEDURE proc_a
declare @num int =0
declare @a int
set @a=@num+1
展开
 我来答
wanzhongwen19
2013-03-15 · 知道合伙人互联网行家
wanzhongwen19
知道合伙人互联网行家
采纳数:112 获赞数:870
毕业于湖南吉首大学,学士学位。从事web行业五年经验,现任中国燃气集团担任前端开发工程师

向TA提问 私信TA
展开全部
alter PROCEDURE proc_a
(@i int)
as
declare @num int
declare @a int
select @num=0,@a=0
while @num<=@i
begin
set @a=@a+@num
set @num=@num+1
end
print @a

执行 proc_a @i=1 结果为1

@i=2 结果为3
szm341
2013-03-15 · TA获得超过6726个赞
知道大有可为答主
回答量:5005
采纳率:100%
帮助的人:5170万
展开全部
declare @a int
set @a=0
while @a<100 begin
set @a=@a+1
print @a
end
更多追问追答
追问
如果达到要求的话,执行下面的存储过程,我的表test,应该执行一次存储,表的id应该变才对,现在还是null,方便加qq请教么,我的1299154431
create proc a
as
declare @a int
set @a=0
while @a<100
begin
set @a=@a+1
--print @a
update dbo.test
set id=@a
end
追答
你更新不加where条件吗?这循环要执行100次update呢
你确定你更新了存储过程吗
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
传奇勇者
2013-03-15 · TA获得超过747个赞
知道大有可为答主
回答量:1706
采纳率:75%
帮助的人:812万
展开全部
对你这个问题的提出有疑问,什么情况下会存在这个问题呢?你要是直接用累加,这个数实际只是循环数,你要是想记录实际数,恐怕又需要在a这个存储过程中做工作,想象不出有什么实际用处。不如你把业务需求说出来,可能会有更好的设计思路。
更多追问追答
追问

最开始回答的那个答案下有我的追问,想自动归档,所以黄色部分,我希望存储过程执行一次,分区号加1

追答
存储过程太强大了,没看明白你的需求,这是什么数据库的?
你确定你这个存储过程能运行不出错么?运行了出现什么结果?跟传统的存储过程写法差异太大了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(1)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式