如何将.mdf文件附加到.SQLEXPRESS

时间:2009-09-20 01:31:34

标签: sql-server sql-server-express

尝试连接字符串

connectionString="Server=.\SQLEXPRESS;
    AttachDbFilename=E:\Database\dnn49.mdf;Database=dnn49; 
    Trusted_Connection=Yes;" 

但我收到错误

  

无法打开物理文件   “E:\数据库\ dnn49.mdf”。   操作系统错误5:“5(访问权限为   拒绝。)“。无法附加文件   'E:\数据库\ dnn49.mdf'   作为数据库'dnn49'。

是什么给出了?

5 个答案:

答案 0 :(得分:8)

如果您从SQL Server Management Studio附加,它也可以作为管理员运行SSMS。然后,这可以利用Administrators组完全控制文件的事实。另一个更罕见的情况是,您将收到此拒绝访问错误,因为数据库已附加。除非您有多个SQL Server实例正在运行并且您已经将它连接到另一个实例,否则这可能更为明显。

答案 1 :(得分:4)

您必须检查SQL Server服务帐户对物理文件“dnn49.mdf”的修改权限,并修改包含该文件的文件夹的权限。

答案 2 :(得分:3)

我不能说你们是否有人为这个问题找到解决方案,但我在这里建议一个简单的...

将mdf和ldf文件复制到SQLServer安装目录,您可以将其放在目录的备份文件夹中。 然后尝试一下

我多次使用过它......

祝你好运

答案 3 :(得分:0)

如果在授予网络服务(或其他服务帐户)修改权限后仍无法附加数据库,还可以将自己的用户ID(附加的用户ID)添加到具有修改权限的文件夹中(即使成员管理员和管理员对文件夹具有完全控制权限。显然,这是Windows 7中的一个错误。

成功附加数据库后,您可以从文件夹中删除用户ID。

答案 4 :(得分:0)

另一个建议是关闭UAC(您可以暂时关闭它以验证它是否是权限问题)。