★★★★★编译成 EXE 文件后,同调试时的运行结果不同!!求救!!

jmcao_peter 2004-03-22 08:18:26
程序功能非常简单:
将 SQLServer 中的一个表:R 中的 一个字段: ksh 写入表:T_BK 相应的字段:ksh
调试阶段一切正常。
可是编译成 EXE 文件后,运行时也无异常,并未报错,运行地非常顺利。可是打开SQLServer 一看 才知道, T_BK 中 的 ksh 还是原封不动!!并未更新!!!
本人百思不得其解!!故向各位大侠请教!!
望哪位大侠指点迷津!!!
...全文
49 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
jmcao_peter 2004-03-23
  • 打赏
  • 举报
回复
谢谢大家,问题已经解决!
我换了种方法,
用游标实现!忽然就可以了!不知道是不是 PB 的问题!
jmcao_peter 2004-03-23
  • 打赏
  • 举报
回复
在下心急如焚!望各位高手指点迷津!!谢谢
jmcao_peter 2004-03-23
  • 打赏
  • 举报
回复
有 connect using Trans_r_t_bk;
mittee 2004-03-22
  • 打赏
  • 举报
回复
不用紧张,检查有没有
connect using Trans_r_t_bk;
jmcao_peter 2004-03-22
  • 打赏
  • 举报
回复
真是急死了!
不知道怎么会这样子!
不知哪位大侠也曾遇过这种情况!!
还请多多指教!!!
jmcao_peter 2004-03-22
  • 打赏
  • 举报
回复
sqlca.autocommit 的属性 我倒没有去设置。

我后来特地又重定义了一个 TRANSACTION 变量,可是也没用!!郁闷!!
jmcao_peter 2004-03-22
  • 打赏
  • 举报
回复
先前用了嵌入式SQL:

update t_bk
set k=:ls_k, bk_qk=:ll_xh, bk_kaoc=:ll_bk_kaoc
where (ks_zkz=:ls_zkzh) and (kc_dm=:ll_kc_dm)
using Trans_zk;

if Trans_zk.sqlcode = 0 then
commit using Trans_zk;
else
rollback using Trans_zk;
return
end if
wkdcuiyi 2004-03-22
  • 打赏
  • 举报
回复
你在程序中sqlca.autocommit 的属性是什么?是true 吗?如果是false 那么你提交了没有
jmcao_peter 2004-03-22
  • 打赏
  • 举报
回复
具体代码如下:
ls_sql = "update t_bk "+&
"set k='"+ls_k+"',bk_qk="+string(ll_xh)+",bk_kaoc="+string(ll_bk_kaoc)+&
" where (ks_zkz='"+ls_zkzh+"') and (kc_dm="+string(ll_kc_dm)+")"

execute immediate :ls_sql using Trans_r_t_bk;

if Trans_r_t_bk.sqlcode = 0 then
commit using Trans_r_t_bk;
else
messagebox('警告','更新报考库(t_bk)失败!~r~n'+Trans_r_t_bk.sqlerrtext)
messagebox('提示','zkzh='+ls_zkzh+' kch='+string(ls_kch))
mle_1.text = ''
cb_quit.setfocus()
rollback using Trans_r_t_bk;
return
end if
klbt 2004-03-22
  • 打赏
  • 举报
回复
用什么方法写入?
嵌入式SQL?数据窗口?DS?
herhu 2004-03-22
  • 打赏
  • 举报
回复
不知有没有使用COMMIT命令

752

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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