.net - 连接到 SQL Server 2008 R2 Express 时出错

标签 .net windows ado.net database-connection sql-server-2008r2-express

我已经在 Windows 7 上安装了 SQL Server 2008 R2 Express。

当我在 VS2010 中运行 Web 项目时,我收到以下错误:

A network-related or instance-specific error occurred while establishing a connection to SQL Server. The server was not found or was not accessible. Verify that the instance name is correct and that SQL Server is configured to allow remote connections. (provider: SQL Network Interfaces, error: 26 - Error Locating Server/Instance Specified)

奇怪,我在本地机器上工作(VS2010、IIS、SQL Server 等,不需要网络)。

我四处搜索并遵循了许多提示。没有任何帮助。

我使用了正确的实例名称(例如 Data Source=PCName\SQLServer;Initial Catalog=SampleDBName;Integrated Security=True)

为网络服务提供正确的凭据等。

我现在迷路了,这个问题已经有一个星期了。拔我的头发!

更新:

我得到了使用 SQL Server Management Studio Express 测试连接字符串的提示。在连接弹出屏幕中,您通常使用登录选项卡(第一个和默认选项卡)。您还可以使用第三个选项卡“其他连接参数”。我测试了我的连接字符串,它工作正常!

所以,我认为这是有权利的事情。但我不知道是什么或哪个...

哦,是的。一些额外的信息。 我将 IIS 7.5 的应用程序池默认选项从“ApplicationPoolIdentity”更改为“NetworkService”。我将网络服务添加为登录到 SQL,授予授权等。 我打开了 SQL Browser 服务,该服务正在运行(但实际上并不是必需的,因为我在本地运行)。

更新 2:

似乎我找到了导致错误的原因,但我不知道为什么。

对于我的网站,我创建了一个包含一些虚拟文件夹和应用程序的网站。我的逻辑中需要一个 url。因此我使用主机 header (如 http://server.name.tld )

在 VS2010 中,我配置了属性页 -> 启动选项 -> 使用带有 url 的自定义 Web 服务器(与前面提到的主机 header 相同)。

如果我这样做,我会得到错误。

如果我使用 Property pages -> start options -> default web server,我似乎可以连接到数据库。

但我需要使用主机 header 。

我需要做什么才能让“自定义 Web 服务器”正常工作?

更新 3:

今天还尝试了带有 Windows Server 2008 的测试虚拟机。仍然出现错误。

还制作了一个测试 Web 应用程序,没有 IIS 站点,也没有主机头。那个工作得很好(使用相同的连接字符串)。也在虚拟机上。

我迷路了。我真的需要一个可以在这个领域与我交流一些知识的人......

最佳答案

您是否尝试使用 SQLExpress 作为连接字符串中的实例名称?

PCName\SQLExpress

此外,检查您的服务器是否配置为接受通过 TCP/IP 的连接(检查 Sql Server 配置管理器)。您可以使用 SQL Server Management Studio 连接到您的数据库吗?从 Visual Studio 测试您的连接,是否有效?

关于.net - 连接到 SQL Server 2008 R2 Express 时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9830961/

相关文章:

c# - 在 WPF 中是否有使用后台 worker 的替代方法?

c++ - Windows CreateFile - 文件打开时的动态共享模式?

vb.net - ADO Entity Framework 中未映射关联端

sql - PL/SQL 过程 : How return a select statement?

.net - 从 c# 对象中获取的内存

.net - XmlTypeAttribute 不更改类型名称

javascript - 防止用户篡改 View 的增量代码

windows - 是否存在与 IMAGE_FILE_REMOVABLE_RUN_FROM_SWAP 或 IMAGE_FILE_NET_RUN_FROM_SWAP 相关的风险?

windows - cmd.exe 不递增 for 循环中的数字

c# - 无法创建泛型方法 : "T" not found