我目前正在使用Visual Studio 2010和SQL Server 2008 R2开发一个程序。
我目前在连接到SQL Server时遇到问题。首先,我有一个IP 192.168.15.101 的工作站,建立与IP 192.168.0.11 的SQL Server的连接。
此工作站可以成功ping服务器,我也可以从SQL Server Management Studio连接到服务器中的SQL Server。下面的代码也顺利运行:
.extQuery = *SQL Query Here*
Try
If InternalSupport.RefreshConnection(False, GlobalVar.connectionString, GlobalVar.Server, False) Then
.command = New SqlCommand(.extQuery, .connect)
.reader = .command.ExecuteReader
While .reader.Read
*Some Code Here*
End While
.reader.Close()
.command.Dispose()
.connect.Close()
Catch ex As Exception
*Error Handling Here*
End Try
然而,当我尝试为VS内置数据源重新填充表适配器时,问题出现了。每当我拨打以下代码时:
Me.TEMPORARY_DUETableAdapter.Fill(Me.DsAscendPending.TEMPORARY_DUE)
它引发了这个错误:
建立与SQL Server的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。 (提供者:命名管道提供程序,错误:40 - 无法打开与SQL Server的连接)
我所尝试的是:
非常感谢您对此错误的任何帮助。谢谢!
我找到了解决方案。问题在于我的连接字符串。我使用服务器计算机名称作为数据源而不是IP。
以下是我以前的连接字符串:
connectionString="Data Source=MAIL-SERVER;Initial Catalog=MG_CreativeLab;Persist Security Info=False;User ID=sa;Password=#adminmedan123#"
允许从相同的IP细分进行连接,同时拒绝来自其他细分的连接
这是正确的连接字符串:
connectionString="Data Source=192.168.0.11;Initial Catalog=MG_CreativeLab;Persist Security Info=False;User ID=sa;Password=#adminmedan123#"
感谢您的回复!
答案 0 :(得分:0)
我找到了解决方案。问题在于我的连接字符串。我使用服务器计算机名称作为数据源而不是IP。
以下是我以前的连接字符串:
connectionString="Data Source=MAIL-SERVER;Initial Catalog=MG_CreativeLab;Persist Security Info=False;User ID=sa;Password=#adminmedan123#"
允许从相同的IP细分进行连接,同时拒绝来自其他细分的连接
这是正确的连接字符串:
connectionString="Data Source=192.168.0.11;Initial Catalog=MG_CreativeLab;Persist Security Info=False;User ID=sa;Password=#adminmedan123#"
感谢您的回复!