见鬼的问题
SET XACT_ABORT ON
BEGIN TRAN
SELECT @G_1=(SELECT SUBSTRING(DQZ_C,1,1) FROM CSSZB_S WHERE ID_I=0)
SELECT @ckbj_C =ckbj_C,@ywfs_C=ywfs_C,@pjxsfs_C=pjxsfs_C FROM PJxscK_H WHERE ID_C=@ID_C
SELECT @FLAGE= '0 '
DECLARE CURDETAIL CURSOR FOR SELECT ID_I,ZID_C,ISNULL(CW_C, ' ') as cw_c,jJ_F,SHL_I,tkqsj_f,DHBJ_C FROM PJcKMX_B WHERE ID_C=@ID_C
OPEN CURDETAIL
FETCH NEXT FROM CURDETAIL INTO @ID_I,@ZID_C,@CW_C,@JJ_F,@SHL_I,@tkqsj_f,@DHBJ_C
WHILE (@@FETCH_STATUS = 0)
BEGI
IF (EXISTS(SELECT * FROM PJKC_R WHERE ZID_C=@ZID_C AND CW_C =@CW_C ))
BEGIN
select @jqKC_I=( SELECT sum(kc_I) FROM PJKC_R WHERE ZID_C=@ZID_C AND CW_C =@CW_C )
UPDATE PJKC_R SET KC_I=KC_I+(-1)*@FX*@SHL_I WHERE ID_C=@ZID_C ND CW_C =@CW_C
select @jhKC_I=( SELECT sum(kc_I) FROM PJKC_R WHERE ZID_C=@ZID_C AND CW_C =@CW_C )
● insert into [out](id_C,rq_D,zid_C,qkc_f, hkc_f,ck_F,jj_F,cw_C,fx)values (@id_C,getdate(),@ZID_C,@jqKC_I,@jhKC_I,@SHL_I,@jj_F,@cw_C,@fx)
END
ELSE begin
● insert into [out](id_C,rq_D,zid_C, qkc_f, hkc_f,ck_F,jj_F,cw_C,fx)values (@id_C,getdate(),@ZID_C,-9999,@fx*@SHL_I,@SHL_I,@jj_F,@cw_C,@fx)
if @pjxsfs_C= '客户退还 '
update pjckmx_bt set ktksh_i=ktksh_i-(-1)*@FX*@SHL_I WHERE ID_i=CONVERT(int,@tkqsj_f)
FETCH NEXT FROM CURDETAIL INTO @ID_I,@ZID_C,@CW_C,@JJ_F,@SHL_I ,@tkqsj_f,@DHBJ_C
END
CLOSE CURDETAIL
DEALLOCATE CURDETAIL
COMMIT TRAN
SET XACT_ABORT OFF
上面带●执行后的结果为:
4382E00060952007-04-21 13:48:46.4971005080-JAA1Z 1.00.01.0
4383E00060952007-04-21 13:48:46.5131005212-JA 8.07.01.0
4387E00060952007-04-21 13:55:01.5771005080-JAA1Z 0.01.01.0
4388E00060952007-04-21 13:55:01.5771005212-JA 7.08.01.0
4389E00060952007-04-21 13:55:16.1531005080-JAA1Z 1.00.01.0
4390E00060952007-04-21 13:55:16.1531005212-JA 8.07.01.0
4518E00060952007-04-21 18:58:40.1701005080-JAA1Z 0.01.01.0
4519E00060952007-04-21 18:58:40.1701005212-JA 8.09.01.0
4520E00060952007-04-21 18:58:40.1701005080-JAA1Z 1.02.01.0
4522E00060952007-04-21 18:58:51.2001005080-JAA1Z 2.01.01.0
4523E00060952007-04-21 18:58:51.2001005212-JA 9.08.01.0
4543E00060952007-04-21 19:05:51.3271005080-JAA1Z 1.02.01.0
4544E00060952007-04-21 19:05:51.3271005212-JA 8.09.01.0
4545E00060952007-04-21 19:06:07.4801005080-JAA1Z 2.01.01.0
4546E00060952007-04-21 19:06:07.4801005212-JA 9.08.01.0
4518
4519
4520 异常了 按理论上上4520这条记录不应该产生才对呀,
[解决办法]
看下where后面
[解决办法]
去表里看看 是不是真的不应该产生
[解决办法]
●??
这是什么符号,为明白的符号不要乱用
[解决办法]
没有测试数据,光有结果,如何知道是异常?
[解决办法]
怪
[解决办法]
up
[解决办法]
明显LZ没有贴好代码
比如while下面的begin===BEGI
else后只有begin 没有end