ASE在PB中建立临时表并在调用的存储过程中二次调用的疑问

sybasebbs sybasebbs 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
主要代码如下:
————————
///生成临时表
ls_sql = "create table #temp_rcvord (" + &
"rcv char(40) not null," + &
"ord char(40) not null," + &
"item int not null," + &
"dat datetime not null," + &
"priceterm char(10) null)"
EXECUTE IMMEDIATE :ls_sql USING SQLCA;
sqlca.of_commit()
lb_temp = true

//
FOR k = 1 to upperbound(ll_rowcount)
li_itemid = dw_form.getitemNumber(ll_rowcount[k],"pchs_ordit_id")
sqlca.autocommit = true
DECLARE up_temp PROCEDURE FOR up_pchsord_genrcv //使用到临时表#temp_rcvord
@arg_ordid = :ls_ordid,
@arg_item = :li_itemid
Using sqlca;
Execute up_temp;


If SQLCA.sqlcode < 0 then
messagebox("提醒","!")
lb_temp = false
end if
sqlca.autocommit = false
CLOSE up_temp ;
sqlca.of_commit()
next

IF lb_temp then
DECLARE up_temp1 PROCEDURE FOR up_pchsord_rcvafter //使用到临时表#temp_rcvord
using sqlca;
Execute up_temp1 ;
CLOSE up_temp1 ;
sqlca.of_commit()
End if


IF lb_temp then
messagebox("成功","!")
End if

//删除临时表
ls_sqldrop = "drop table #temp_rcvord"
EXECUTE IMMEDIATE :ls_sqldrop USING SQLCA;
sqlca.of_commit()


以上是主要代码,使用环境:PB9及ASE12.5 10430目前的困惑:
1、以上代码, 在上面的环境中有时候不正常,当然平时都正常;
2、如果升级ASE到11449EBF,肯定不正常。
请教这一般是什么问题?
...全文
评论 11
收藏 已收藏
分享
返回顶部
sybasebbs
Sybase 2,598 成员 25,608 内容