PB 调用 SQLSERVER 的存储过程
PB11 按如下方式调用 SQLSERVER 的存储过程,不报错,但存储过程里的代码没执行:
DECLARE SRCXB_ZY PROCEDURE FOR SRCXB_ZY_CW
@DA1 = '200902'
execute SRCXB_ZY ;
commit ;
SQLSERVER 存储过程的代码是这样:
create procedure SRCXB_ZY_CW @DA1 char(6)
as
begin
begin transaction SRCXB_ZY_CW
SELECT convert(char(8),RQ,112) CXRQ ,SFLB LB,sum(SJFY) HZJE INTO SRCXB_CW
FROM SFD_2
WHERE convert(char(6),RQ,112)=@DA1 group by convert(char(8),RQ,112) ,SFLB
commit transaction SRCXB_ZY_CW
end
GO
PB11,到底应该怎样调用存储过程?
[解决办法]
给你一个我以前写的,你的存储过程执行只是查询,并没有什么别的操作,没法看效果
sqlca.autocommit=true
declare lup_drophiscol procedure for up_drophiscol
@tablename=:ls_tabname,
@checkcontent=:ls_err output;
execute lup_drophiscol;
if sqlca.sqlcode = -1 then
sqlca.autocommit=false
messagebox('出错',sqlca.sqlerrtext)
return
end if
fetch lup_drophiscol into :ls_err;
close lup_drophiscol;
sqlca.autocommit=false
if sqlca.sqlcode = -1 then
messagebox('出错',sqlca.sqlerrtext)
elseif isnull(ls_err) or ls_err='' then
messagebox('系统提示!','删除成功!')
else
messagebox('出错!',ls_err)
end if
[解决办法]
但是在执行存储过程前加 sqlca.autocommit=true
执行完后sqlca.autocommit=false
会减少很多问题。
[解决办法]
给你一个我以前写的,你的存储过程执行只是查询,并没有什么别的操作,没法看效果
-------
人家有into的
[解决办法]
星星提的问题没那么容易解决的~~
[解决办法]