标题:关于sql server 出错的问题,烦请帮忙。
只看楼主
llgj2007
Rank: 1
等 级:新手上路
帖 子:14
专家分:6
注 册:2013-4-9
结帖率:100%
已结贴  问题点数:20 回复次数:5 
关于sql server 出错的问题,烦请帮忙。
我设计了一个访问远程服务器数据更新本地服务器数据的一个程序,但出现了一个问题,远程服务器登录成功,没问题,数据也能读过来,但是一旦连接失败,就会报出错代码1526,不知道是哪里的问题,我设计的是每隔6分钟去读一次远程服务器数据,如果远程服务器连接出现异常,不要出错,结束本次读取,6分钟后再连接也行。
搜索更多相关主题的帖子: sql server 出错 远程 服务器 
2019-01-06 18:21
llgj2007
Rank: 1
等 级:新手上路
帖 子:14
专家分:6
注 册:2013-4-9
得分:0 
不知道我是不是没有说清楚,就是我这个程序是要求自动运行的,如果因网络问题或是远程服务器问题可能造成连接失败,连接句柄小于0时的容错。我不需要他提示我连接失败,而是要求他过一定的时间重新连接。但是现在做不到,一旦出现一次连接失败,就老是出错。
2019-01-06 19:50
吹水佬
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
等 级:版主
威 望:432
帖 子:10064
专家分:41463
注 册:2014-5-20
得分:0 
这种情况类似WEB的“短连接”,连接获取数据后就主动断开。
能连接和获取数据,算是正常了吧。
网络连接问题,有时会出现中断连接,也算是正常现象,可以试试用异常处理,如ON ERROR或TRY。
2019-01-07 05:05
kiff
Rank: 11Rank: 11Rank: 11Rank: 11
来 自:广州
等 级:贵宾
威 望:46
帖 子:756
专家分:2531
注 册:2013-1-30
得分:15 
    =SQLSETPROP(0,"DispLogin" ,3) && 设置环境为"从不显示 ODBC 登录对话框"。
    连接句柄=SQLSTRINGCONNECT("连接字串")
    IF 连接句柄=-1
        WAIT WINDOW '连接失败' NOWAIT
        RETURN
    ENDIF
    执行SQL=SQLEXEC(连接句柄,"SELECT * FROM 表 where XXXXX","临时表")
    IF 执行SQL=-1
        WAIT WINDOW '执行SQL失败' NOWAIT
        =SQLDISCONNECT(连接句柄) &&断开连接
        RETURN
    ENDIF
    =SQLDISCONNECT(连接句柄) &&断开连接
    **以下执行更新本地数据操作
    SELECT 临时表
    .
    .
    .
   
2019-01-07 13:59
厨师王德榜
Rank: 16Rank: 16Rank: 16Rank: 16
等 级:版主
威 望:183
帖 子:942
专家分:4724
注 册:2013-2-16
得分:5 
远程连接要占用资源,所以最好随用随关而不是一直试图保持连接。
这样的好处就是6分钟之后,你不必纠结原来的连接是否还有效?是否已经被中断踢出?
直接连接,读取,再关闭连接就好了。
2019-01-08 15:15
llgj2007
Rank: 1
等 级:新手上路
帖 子:14
专家分:6
注 册:2013-4-9
得分:0 
感谢4楼,按你的整好了,没在出错。
2019-01-14 10:40



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-492538-1-1.html




关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.014036 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved