找回密码
 加入
搜索
查看: 3064|回复: 2

[AU3基础] Oracle查询远程数据库经常出错

[复制链接]
发表于 2014-7-4 13:19:48 | 显示全部楼层 |阅读模式
用这句语句$adoRs.Open($sql)来查询远程数据库的数据,大多数时候是成功的,但是有时就会出现错误,造成程序崩溃。为什么用If @error Then Return -1语句不能起到防崩溃效果呢?有没有什么办法来防止程序崩溃呢?我估计是Oracle数据库连接不稳定造成的,但是不知道怎么会这样。
$adoRs.Open($sql)
If @error Then Return -1 
发表于 2014-7-5 12:40:33 | 显示全部楼层
用obj拦截错误
发表于 2014-7-5 12:41:19 | 显示全部楼层
$Err = ObjEvent("AutoIt.Error", "ODBCJET_ErroHandler") ;定义一个函数ODBCJET_ErroHandler收集对象的错误

Func ODBCJET_ErroHandler();Com对象错误信息收集函数
        MsgBox(0,"Intercepted Sql Error !", @CRLF &"Intercepted Sql Error !"      & @CRLF  & _
             "err.description is: "    & @TAB & $Err.description    & @CRLF & _
             "err.windescription:"     & @TAB & $Err.windescription & @CRLF & _
             "err.number is: "         & @TAB & hex($Err.number,8)  & @CRLF & _
             "err.lastdllerror is: "   & @TAB & $Err.lastdllerror   & @CRLF & _
             "err.source is: "         & @TAB & $Err.source         & @CRLF & _
             "err.helpfile is: "       & @TAB & $Err.helpfile       & @CRLF & _
             "err.helpcontext is: "    & @TAB & $Err.helpcontext & @CRLF)
        SetError(1)
EndFunc   ;==>ODBCJET_ErroHandler
您需要登录后才可以回帖 登录 | 加入

本版积分规则

QQ|手机版|小黑屋|AUTOIT CN ( 鲁ICP备19019924号-1 )谷歌 百度

GMT+8, 2024-12-22 21:11 , Processed in 0.076251 second(s), 23 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表