无法连接到 SQL Server 中的本地地址

无法使用此连接字符串创建 SQL 连接:


<connectionStrings>

    <add name="SchoolContext" 

         connectionString="Server=.;Database=SchoolContext;Integrated Security=True;"

         providerName="System.Data.SqlClient" />

</connectionStrings>

我收到此错误:


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


但是这个连接字符串没有问题:


<connectionStrings>

    <add name="SchoolContext" 

         connectionString="Server=DESKTOP-7M2F9E2\MOJTABA;Database=SchoolContext;Integrated Security=True;"

         providerName="System.Data.SqlClient" />

</connectionStrings>

为什么它无法连接到local?


qq_花开花谢_0
浏览 214回答 3
3回答

一只斗牛犬

这很可能是因为您试图连接到一个名为的命名实例,MOJTABA而不是从您发布的代码中可以看出的默认实例connectionString="Server=DESKTOP-7M2F9E2\MOJTABA。你也可以说Server=localhost\MOJTABA或.\MOJTABA

郎朗坤

我会试试这个:<connectionStrings>&nbsp; &nbsp; <add name="SchoolContext" providerName="System.Data.SqlClient" connectionString="Server=.\MOJTABA;Database=SchoolContext;Integrated Security=True;"/></connectionStrings>Server=.\MOJTABA表示:本地机器(.),MOJTABA 数据库服务器实例。仅靠点不足以知道要连接到哪个实例。

繁华开满天机

这不是 C# 问题,因此该标记是错误的。网络代码不关心另一端是否在同一台计算机、同一交换机或 Voyager 2 探测器上。SQL Server 的正确安装和管理与编程完全不同。最后,连接字符串是如此复杂,有一个专门的网页。这是 SQL Server 管理问题(您尝试连接的实例不存在/不允许进行连接)或连接字符串问题(您对其进行了错误格式化)。如果不知道您的环境究竟是什么样子,真的无法判断,这是只有您才能真正做到的事情。
打开App,查看更多内容
随时随地看视频慕课网APP