Foxtable(狐表)用户栏目专家坐堂 → 一个数据源对应两个连接


  共有5245人关注过本帖树形打印复制链接

主题:一个数据源对应两个连接

帅哥哟,离线,有人找我吗?
hopestarxia
  1楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:934 积分:6733 威望:0 精华:0 注册:2013/8/10 18:33:00
一个数据源对应两个连接  发帖心情 Post By:2022/6/2 13:48:00 [只看该作者]

老师,使用的是SQL2005数据源,参照示例5设置了两个IP地址(一个局域网IP(数据源设置对应的IP),一个公网IP),
但是在公网上使用时,并不能切换到第二个IP连接上来。(注:公网IP单独设置数据源时是可以正常访问的,地址没有问题),请问是哪里出了问题?

 回到顶部
帅哥哟,离线,有人找我吗?
有点蓝
  2楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:超级版主 帖子:111414 积分:567140 威望:0 精华:9 注册:2015/6/24 9:21:00
  发帖心情 Post By:2022/6/2 13:57:00 [只看该作者]

怎么做切换的?

 回到顶部
帅哥哟,离线,有人找我吗?
hopestarxia
  3楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:四尾狐 帖子:934 积分:6733 威望:0 精华:0 注册:2013/8/10 18:33:00
  发帖心情 Post By:2022/6/3 4:23:00 [只看该作者]

数据源名为:SQSJY
代码为  Provider=SQLOLEDB.1;Password=KX987yl++;Persist Security Info=True;User ID=sa;Initial Catalog=ccgl;Data Source=192.168.2.155,8056

项目属性  BeforeConnectOuterDataSource 里代码如下:
If e.Name = "SQSJY" Then
    If Network.Ping("192.168.2.155,8056",1000) = False  Then '如果第一个IP无法接通
        e.ConnectionString = e.ConnectionString.Replace("192.168.2.155,8056", "外网IP地址,8056") 
    End If
End If

上面的外网IP地址如直接设置在数据源中能正常连接使用。

 回到顶部
帅哥哟,离线,有人找我吗?
狐狸爸爸
  4楼 | 信息 | 搜索 | 邮箱 | 主页 | UC


加好友 发短信
等级:管理员 帖子:47497 积分:251403 威望:0 精华:91 注册:2008/6/17 17:14:00
  发帖心情 Post By:2022/6/3 10:57:00 [只看该作者]

If e.Name = "SQSJY" Then
    If Network.Ping("192.168.2.155,8056",1000) = False  Then '如果第一个IP无法接通
        e.ConnectionString = e.ConnectionString.Replace("192.168.2.155,8056", "外网IP地址,8056") 
        MessageBox.show("切换了哦,新的链接字符串" & e.ConnectionString)
    else
 MessageBox.show(“局域网正常,没有切换”" )
    End If
else
    MessageBox.show("名字错误,正确的:" & e.name)
End If

 回到顶部