无法将数据库附加到 SQL Server Enterprise,需要 Express 吗?

Posted

技术标签:

【中文标题】无法将数据库附加到 SQL Server Enterprise,需要 Express 吗?【英文标题】:Can't attach database to SQL Server Enterprise, needs Express? 【发布时间】:2013-12-07 15:16:30 【问题描述】:

我的 PC 上已经安装了 SQL Server Enterprise 2012,并且正在运行的服务是 MSSSQLSERVER(可在 SQL Server 配置管理器中找到)。

我正在尝试附加一个需要 SQL Server Express 的数据库!

我下载了SQLEXPR_x64_ENU 并安装了它,不幸的是SQLEXPRESS 没有显示在我的配置管理器中。

我应该怎么做才能附加这个数据库?

我做过的尝试:

首先我尝试使用 SQL Server Management Studio:附加时会出现此问题消息:

附加数据库时出错。详情请点击消息栏中的超链接。

进度框显示:

发生错误。

当我尝试在 VS2012 中向数据库添加数据连接时,我收到以下错误:

    如果我使用数据源“Microsoft SQL Server”,我会收到以下消息:

    此版本的 SQL Server 不支持用户实例登录标志。连接将被关闭。

    如果我使用数据源“Microsoft SQL Server 数据库文件”并浏览数据库文件,我会收到以下错误消息:

    与 sql server 建立 oa 连接时发生网络相关或特定于实例的错误。服务器未找到或无法访问。验证实例名称是否正确以及 sql server 是否配置为允许远程连接。 (提供者:Sql 网络接口,错误 52 - 无法找到本地数据库运行时安装。验证 SQL Server Express 是否正确安装以及本地数据库运行时功能已启用)

如您所见,需要 SQL Server Express。

【问题讨论】:

当您尝试附加它时会发生什么?具体一点。 您能告诉我们您尝试使用的连接字符串吗?如果您想使用AttachDbFile= 功能(不过我强烈推荐反对它),那么YES,此功能在Express 中可用b> 版本。 你是对的,'AttachDbFile' 不能正常工作。我用波纹管更改了​​我的 webconfig 代码:' ' 【参考方案1】:

如果您在已经具有 MSDN 开发人员版本的笔记本电脑上正确安装了 SQL Express,您应该会在服务中看到两个实例。

MSSQLSERVER - developer version
SQLEXPRESS - express version

SQL Express 不附带 SQL Server 代理等服务。但它应该在配置管理器 SQL Server Services 下列为数据库引擎 SQL SERVER (SQLEXPRESS)。

确保该服务以及浏览器服务已启动。在网络配置下,确保 TCP/IP 已启用。在客户端协议下确保 TCP/IP 已启用。

由于您拥有 SQL Server 的开发版本,您可以像默认实例一样连接和管理 express 实例。只需将您的 SSMS 查询窗口与正确的 TSQL 一起使用。

这是我博客上关于如何创建附加数据库的链接。

http://craftydba.com/?p=1753

如果您对我刚才讨论的屏幕截图或其中两个设置仍有问题,请回复。

【讨论】:

我一开始就提到了,我已经有企业版了。我想我应该卸载它并使用 EXPRESS 版本。 我认为没有必要。我有快速和标准共存的服务器。如果可以通过 SSMS 连接到 .\SQLEXPRESS,那么我建议的上述设置就可以了。请记住,这是一个可能不在端口 1433 上的命名实例,您必须通过 \ 引用它。

以上是关于无法将数据库附加到 SQL Server Enterprise,需要 Express 吗?的主要内容,如果未能解决你的问题,请参考以下文章

sql server分离及附加数据库

sql server 2008附加数据库出错

SQL Server 2008R2数据库文件导入到SQL Server 2008数据库中

无法将 ODBC 数据源添加到 SQL Server

sql server SQL 调试:无法启动 T-SQL 调试。未能附加到 SQL Server 进程

SQL SERVER 2008 R2 数据库附加到 SQL server 2005,怎么整