游标的使用...

frankie_24 2007-02-27 05:14:31
Declare Cur Cursor For
Select CK_CKBH,WZM_MXBH,Temp_RKSL,Temp_RKDJ,Temp_RKSJ,RKF_FSBH From RKTemp Where CK_CKBH = @CK_CKBH AND RKF_FSBH = @RKF_FSBH and DX_DXBH=@DX_DXBH
Open Cur
Fetch Cur Into @CK_CKBH,@WZM_MXBH,@Temp_RKSL,@Temp_RKDJ,@Temp_RKSJ,@RKF_FSBH
While @@Fetch_Status = 0
Begin
Select @RKM_MXBH = ISNULL(Max(RKM_MXBH),0) + 1 From RKMXB Where RK_RKBH =@RK_RKBH
Select @CKK_KCBH =ISNULL(Max(CKK_KCBH),0)+1 From CKKCB
Insert into RKMXB(RK_RKBH,RKM_MXBH,CK_CKBH,WZM_MXBH,RKM_RKSL,RKM_RKDJ,RKM_RKJE,RKM_RKSJ)
Values(@RK_RKBH,@RKM_MXBH,@CK_CKBH,@WZM_MXBH,@Temp_RKSL,@Temp_RKDJ,@Temp_RKSL*@Temp_RKDJ,@Temp_RKSJ)

if not exists(select * from CKKCB where CK_CKBH=@CK_CKBH and WZM_MXBH=@WZM_MXBH)
Insert into CKKCB(CKK_KCBH,CK_CKBH,WZM_MXBH,CKK_KCSL,CKK_DJ,CKK_JE)
Values(@CKK_KCBH,@CK_CKBH,@WZM_MXBH,@Temp_RKSL,@Temp_RKDJ,@Temp_RKSL*@Temp_RKDJ)
else
update CKKCB set CKK_KCSL=CKK_KCSL+@Temp_RKSL where CK_CKBH=@CK_CKBH and WZM_MXBH=@WZM_MXBH

Fetch Cur Into @CK_CKBH,@WZM_MXBH,@Temp_RKSL,@Temp_RKDJ,@Temp_RKSJ,@RKF_FSBH
end
close Cur
Deallocate Cur --关闭游标


这是一个游标的使用,其中有两句相同的
Fetch Cur Into @CK_CKBH,@WZM_MXBH,@Temp_RKSL,@Temp_RKDJ,@Temp_RKSJ,@RKF_FSBH
我想知道第二句的作用是什么意思?
谢谢了....
...全文
147 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
frankie_24 2007-02-27
  • 打赏
  • 举报
回复
谢谢了昂..
paoluo 2007-02-27
  • 打赏
  • 举报
回复
掉了“NEXT FROM”吧,
Fetch NEXT FROM Cur Into @CK_CKBH,@WZM_MXBH,@Temp_RKSL,@Temp_RKDJ,@Temp_RKSJ,@RKF_FSBH

wangdehao 2007-02-27
  • 打赏
  • 举报
回复
取下一条记录,跟While @@Fetch_Status = 0配合,完成循环
wangdehao 2007-02-27
  • 打赏
  • 举报
回复
应该是Fetch Next 吧?
子陌红尘 2007-02-27
  • 打赏
  • 举报
回复
把结果集中下一条记录的字段赋值给变量,即对结果集进行遍历。
paoluo 2007-02-27
  • 打赏
  • 举报
回复
這個是一對的。
jacobsan 2007-02-27
  • 打赏
  • 举报
回复
取下一条记录

34,591

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧