以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]数据库连接超时  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=94369)

--  作者:zswushi
--  发布时间:2016/12/22 9:49:00
--  [求助]数据库连接超时
老师:
     您好!
     请问下,若我的软件项目连接不上数据库,软件会持续尝试连接很久,约20秒时间 ,然后弹出“创建外部连接 ‘** ’失败,请联系管理者或开发者,重新设置数据链接字

符串”,我能否把这个连接提示的时间缩短,比如缩短到8秒 或 5秒,因为一般正常的 1—— 2秒弹出 登录窗口,


    谢谢!



--  作者:有点色
--  发布时间:2016/12/22 10:17:00
--  

 你可以在beforeOpenProject事件,加入 tryHost 或者 ping,先测试一下

 

http://www.foxtable.com/webhelp/scr/2709.htm

 

http://www.foxtable.com/webhelp/scr/1401.htm

 


--  作者:zswushi
--  发布时间:2016/12/22 11:13:00
--  
我做了个全局变量  COn  con 赋值  为链接字符串 ,  e.ConnectionString

然后 在before openproject  设置了这样的代码

If Connections.TryConnect(con) = False Then
       messagebox.show("无法连接到数据库,请联系管理员.","警告",MessageBoxButtons.OK,MessageBoxIcon.Warning)
    e.cancel = True
End If

现在是,一切正常的情况下,也打不开项目了,所以,我只能删除这个代码,究竟怎么做才好呢?谢谢指教


[此贴子已经被作者于2016/12/22 11:15:06编辑过]

--  作者:有点色
--  发布时间:2016/12/22 11:17:00
--  
 看2楼。
--  作者:zswushi
--  发布时间:2016/12/22 11:21:00
--  
你那种做法不能检查  SA,密码 以及 数据库名呀,若四个参数,有一个出错,怎么办??


--  作者:有点色
--  发布时间:2016/12/22 11:24:00
--  

那用这段代码测试。

 

try
    Dim conn As ADODB.Connection
    conn = New ADODB.Connection
    conn.ConnectionString = "Provider=SQLOLEDB.1;Password=hailun.;Persist Security Info=True;User ID=sa;Initial Catalog=test;Data Source=voyo"
    conn.Open
   
    msgbox("成功")
    conn.close
Catch ex As Exception
    msgbox("失败")
End try


--  作者:zswushi
--  发布时间:2016/12/22 14:27:00
--  
我的意思是,若软件项目的 参数设置不对, 系统工具条一直处于运行状态 ,如 “连接状态中”   图:



然后过了约有一分钟,才弹出 错误提示:  如 “连接错误提示” 图


 

我是想缩短 打开连接错误提示这个图之间的时间呀,比如 ,时间可以缩短一半呀
  

谢谢!!
图片点击可在新窗口打开查看此主题相关图片如下:连接状态中.jpg
图片点击可在新窗口打开查看

图片点击可在新窗口打开查看此主题相关图片如下:连接错误提示.jpg
图片点击可在新窗口打开查看

--  作者:有点色
--  发布时间:2016/12/22 14:30:00
--  
看6楼啊。beforeOpenProject检测一次啊。
--  作者:zswushi
--  发布时间:2016/12/22 15:55:00
--  
按照你六楼的代码 执行,一样的要花很长时间!!!


--  作者:有点色
--  发布时间:2016/12/22 16:06:00
--  
 那没办法。只能这样判断。大概10秒。