游标的使用...
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
我想知道第二句的作用是什么意思?
谢谢了....
------解决方案--------------------把结果集中下一条记录的字段赋值给变量,即对结果集进行遍历。
------解决方案--------------------取下一条记录,跟While @@Fetch_Status = 0配合,完成循环