无法在SQL Server上附加.mdf文件

时间:2011-08-30 15:29:13

标签: sql-server

我决定将我的SQL Server 2008 R2 Express升级到完整的试用版,在unistall之前,我已经使该Express服务器上的某些数据库脱机,并将所有数据库分离。

正如我原先计划的那样,在卸载Express版本然后我安装了完整试用版之后,唯一需要的是附加.mdf文件,几乎完成了工作。

我现在离线的mdf文件无法附加到服务器!!!

有谁知道如何解决这个问题?

2 个答案:

答案 0 :(得分:3)

好的,有两条建议可能有助于解决此错误:

  • 以管理员身份运行SSMS(SQL Server Management Studio)并尝试附加
  • 尝试使用sp_attach_db
  • 手动附加数据库

手动附加数据库文件:

exec sp_attach_db @dbname=N'<Database name>', @filename1=N'<MDF path and file name>', @filename2=N'<Log path and file name>'

答案 1 :(得分:3)

在ASP.Net MVC中使用代码优先迁移进行数据库更新时遇到了奇怪的异常,详情如下,

发回地面细节, 1.使用Visual Studio从App_Data文件夹中手动删除自动创建的“.mdf”文件。 2.在包管理器控制台中执行update-database。然后得到以下异常,

System.Data.SqlClient.SqlException(0x80131904):无法将文件'E:\ Backup \ Practice \ MVC4 \ DotNetExamples \ DotNetExamples \ App_Data \ DotnetExamples.mdf'作为数据库'DotnetExamples'附加。

解决方案:

如果删除了DB文件,它仍然会在SqlLocalDB中注册。有时它通过删除DB来修复它。我们可以从命令行执行此操作。

在“开始/程序菜单 - &gt;所有程序 - &gt; Visual Studio 2012-&gt; Visual Studio工具”下打开“VisualStudio的开发人员命令提示”

Run the following commands:

sqllocaldb.exe stop v11.0

sqllocaldb.exe delete v11.0

请删除数据库的.mdf文件和SSMS实例。 现在从包管理器控制台执行“update-database”命令,它将为您创建数据库,没有任何障碍。

Source