复制分离的SQL Server数据库时出错

时间:2013-01-12 02:03:32

标签: c# sql-server

我正在使用C#构建应用程序。作为一项要求,我需要将数据库从一个本地驱动器移动到另一个本地驱动器。

通过论坛阅读后,有人建议,移动数据库的最佳方法是:

  • 分离数据库
  • 移动数据库
  • 附加数据库

我能够使用以下代码成功分离数据库:

userConn = new SqlConnection(userdatabase);
userConn.Open();

addConn = new SqlConnection(addInfo);
addConn.Open();

string UserString = "sp_detach_db @DBName, @skipchecks";

SqlCommand cmd = new SqlCommand(UserString, userConn);
cmd.Parameters.AddWithValue("@DBName", userConn.Database);
cmd.Parameters.AddWithValue("@skipchecks", false);
cmd.ExecuteNonQuery();
cmd.Dispose();

cmd = new SqlCommand(UserString, addConn);
cmd.Parameters.AddWithValue("@DBName", addConn.Database);
cmd.Parameters.AddWithValue("@skipchecks", false);           
cmd.ExecuteNonQuery();
cmd.Dispose();

这很好用。但是,我无法移动数据库文件。它引发了一个例外:

  

该进程无法访问文件'* .mdf',因为它正被另一个进程

使用

知道可能出现什么问题吗?

0 个答案:

没有答案
相关问题