数据库不会附加到Microsoft SQL Server Management Studio

时间:2017-01-20 21:02:45

标签: sql sql-server

我正在尝试将数据库附加到Microsoft SQL Server Management Studio。我已将.MDF文件移至C:\programfiles\Microsoft SQL Server\MSSQL11.MSSQLEXPRESS\MSSQL\Data

当我进入附加屏幕时会显示,但是当我点击“确定”时会收到此错误消息。在附加屏幕上:

  

为服务器附加数据库失败' DESKTOP-5DHLE7T \ sqlexpress'。
  (Microsoft.SqlServer.Smo)

     

其他信息:

     

执行Transact-SQL语句或批处理时发生异常。 (Microsoft.SqlServer.ConnectionInfo)

     

目录查找文件" C:\ Program Files \ Microsoft SQL Server \ MSSQL11.MSSQLSERVER \ MSSQL \ DATA \ AdventureWorks2012_Log.ldf"操作系统错误3失败(系统找不到指定的路径。)。 (Microsoft SQL Server,错误:5133)

我的说明是将数据库附加到C:\programfiles\Microsoft SQL Server\MSSQL11.MSSQLSERVER\MSSQL\Data。然而,尽管完成了与指南完全相同的安装,但我没有MSSQL11.MSSQLSERVER路径,只有我之前说过的C:\programfiles\Microsoft SQL Server\MSSQL11.MSSQLEXPRESS\MSSQL\Data

这是我的问题所在吗?如果是这样,在我附加.MDF文件之前,我应该把它放在哪里?任何想法将不胜感激

3 个答案:

答案 0 :(得分:3)

首先,您将文件附加到数据库服务器,而不是Management Studio。

其次,您的错误是关于缺少日志文件。实际上你不需要LDF来附加文件,但你需要做一些工作来实现它:

USE [master] GO
-- Method 1: I use this method
EXEC sp_attach_single_file_db @dbname='TestDb',
@physname=N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\YourDBFile.mdf'
GO

或者,你也可以这样做:

CREATE DATABASE TestDb ON
(FILENAME = N'C:\Program Files\Microsoft SQL Server\MSSQL10.MSSQLSERVER\MSSQL\DATA\YourDBFile.mdf')
FOR ATTACH_REBUILD_LOG
GO

答案 1 :(得分:0)

错误消息表示缺少LDF文件。您需要MDF和LDF。

答案 2 :(得分:0)

您可以单击类型为LDF的第二个文件,然后单击“删除”