以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]数据源切换  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=172896)

--  作者:qq51837000
--  发布时间:2021/11/6 10:29:00
--  [求助]数据源切换
请教老师,因公司不允许连接外网,我做的项目只在内网运行和调试,但有时不在公司,要修改项目都要手动切换数据源很麻烦,我希望实现这样一个功能:
启动时如果在3秒内连接不到内网数据源,就自动连接本地数据源

内网地址:\\\\192.168.109.21\\tq\\TQ000.mdb
本地地址:D:\\TQ000.mdb

--  作者:有点蓝
--  发布时间:2021/11/6 10:31:00
--  
参考:http://www.foxtable.com/webhelp/topics/0682.htm
--  作者:qq51837000
--  发布时间:2021/11/6 11:44:00
--  
我用户管理是用的外部数据源,受影响吗?
--  作者:有点蓝
--  发布时间:2021/11/6 11:48:00
--  
没有影响,和什么用户没有关系。使用filesys判断\\\\192.168.109.21\\tq\\TQ000.mdb存在就使用,否则使用另外一个。
--  作者:qq51837000
--  发布时间:2021/11/7 10:27:00
--  
以下是引用有点蓝在2021/11/6 11:48:00的发言:
没有影响,和什么用户没有关系。使用filesys判断\\\\192.168.109.21\\tq\\TQ000.mdb存在就使用,否则使用另外一个。
这个判断时间有点长,有没有更高效一点的办法?


--  作者:有点蓝
--  发布时间:2021/11/7 20:30:00
--  
试试这种

Dim s As String = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=\\\\192.168.109.21\\tq\\TQ000.mdb;Persist Security Info=False"
If 
Connections.TryConnect(s) = False Then
    MessageBox.Show("数据源无法连通!"
)
End If