首页 > 解决方案 > SQL Server 连接适用于测试应用程序,但不适用于实际应用程序

问题描述

我制作了一个简单的测试应用程序来测试 SQL Server 连接。首先我测试了一个本地数据库,然后是实际的远程数据库。两个连接都工作正常。

但是当我将这个完全相同的代码粘贴到我的实际应用程序中时,只有本地数据库连接有效。尝试连接到远程数据库会抛出SqlException#2

我不明白为什么代码可以在一个应用程序上运行,但不能在另一个应用程序上运行。有任何想法吗?

Imports System.Data.SqlClient

Public Class Form1
    Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

        Dim connStr As String = "Server=AAG-SQL02;Database=ProhaDB;Trusted_Connection=True"
        ''Dim connStr As String = "Server=localhost\SQLEXPRESS01;Database=ProhaDB;Trusted_Connection=True"

        Try
            Dim dbConn = New SqlConnection(connStr)
            dbConn.Open()
            dbConn.Close()
            MsgBox("Connection OK")
        Catch ex As Exception
            MsgBox(ex.Message, MsgBoxStyle.Critical)
        End Try

    End Sub
End Class

抛出异常:

Microsoft.VisualBasic.dll 中的“System.Data.SqlClient.SqlException”

建立与 SQL Server 的连接时发生与网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 SQL Server 是否配置为允许远程连接。(提供者:命名管道提供者,错误:40 - 无法打开与 SQL Server 的连接)

标签: sql-servervb.net

解决方案


请允许用户使用您在数据库中定义的特定数据库,并且同一用户需要访问数据库,其他网络错误将始终向您抛出相同的异常。

在您的 cmd 中 ping 服务器 ip 并检查服务器是否响应您。

打开cmd只写ping AAG-SQL02


推荐阅读