以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  求教 :[DBNETLIB][ConnectionOpen (Connect()).]SQL Server 不存在或拒绝访问  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=126127)

--  作者:temp1234
--  发布时间:2018/10/15 9:49:00
--  求教 :[DBNETLIB][ConnectionOpen (Connect()).]SQL Server 不存在或拒绝访问
问题描述: 我做了一个小程序,因为要提供给客户用,客户的服务器IP 跟我的开发测试服务器IP不一样,我根据帮助文档的说明,在BeforeConnectOuterDataSource里写了
Dim ipFile As String = e.ProjectPath & "ip.txt"
If e.Name = "ktf" Then

    If Filesys.FileExists(ipFile) Then
        Dim ip As String = FileSys.ReadAllText(ipFile)
        e.ConnectionString = e.ConnectionString.Replace("JOHN-PC",ip)
    End If
End If
在启动项目的时候,连接数据库成功,但是编辑外部表的时候报错“[DBNETLIB][ConnectionOpen (Connect()).]SQL Server 不存在或拒绝访问”,网上查了好久也没解决,请老师指教


--  作者:有点甜
--  发布时间:2018/10/15 10:10:00
--  

1、编辑外部表?是指修改数据保存,还是说你修改【外部表】的设置等?

 

2、如果你需要修改表结构等东西,你必须在菜单那里修改和设置数据源才行。如果是修改数据保存也有问题,这个是不应该出现的错误。


--  作者:temp1234
--  发布时间:2018/10/15 10:38:00
--  
是我没有描述清楚,重新说下:因为客户的服务器IP跟我的不一样,我只是想在连接服务器前,从文本中读取数据库的IP地址,然后连接外部数据源.
改完后,这样程序在启动时从文本中读取IP,连接外部数据源没有问题.
在查询外部表的时候报那个错误.
不修改表结构,不对表进行任何修改,只是好像连接不上外部表,很奇怪,能联外部数据源,连接外部表出错
[此贴子已经被作者于2018/10/15 10:40:54编辑过]

--  作者:有点甜
--  发布时间:2018/10/15 11:04:00
--  

 

请说明你做了什么操作?你不能用【外部数据源】【外部数据表】等很多菜单的。

 

如果要用,请点击【外部数据源】,在里面修改数据源的ip地址。


--  作者:temp1234
--  发布时间:2018/10/15 11:44:00
--  
您回复的我没看明白。
我遇到的问题如下:
如果sql server服务器换IP怎么办?把程序重新开发一遍吗?显然不合理。
那么,为了应对这种情况,那我是不是可以在加载外部数据源的时候,在BeforeConnectOuterDataSource事件中,从一个文本文档中读取外部数据源的IP,替换数据库连接字符串中的datasource?好的,我这么设置了,然后在程序启动的时候,会从文本文档中提取外部数据源IP建立数据连接,这个过程没有问题,接下来就有问题了,因为加载外部数据源,肯定有外部数据表的吧,那我要查询外部数据表的记录,或修改外部表的配置,这个过程就报错,给我的感觉就是能连接上外部数据源,但是没有连接上外部表,老师,这回您看明白了吗?

--  作者:有点甜
--  发布时间:2018/10/15 11:49:00
--  

1、如果要修改【外部表配置】等东西,你肯定必须需要重新设置数据源【外部数据源】才行的。

 

2、通过 BeforeConnectOuterDataSource 事件处理的,只适用于生成的项目(不是正在开发的项目),可以查数据,可以修改数据,保存数据,都没问题。

 

但如果要重新引入表等配置,肯定是不行的,因为那个时候用的是你【外部数据源】那里设置的数据源连接。


--  作者:temp1234
--  发布时间:2018/10/15 13:39:00
--  
好的,谢谢.