我有一个使用 SQL Express 2005 数据库的简单应用程序。当用户关闭应用程序时,我想通过在另一个目录中制作副本来提供备份数据库的选项。但是,当我尝试这样做时,我得到“该进程无法访问文件'...\Pricing.MDF',因为它正在被另一个进程使用。” 我关闭了连接,处理了连接,将其设置为空,然后使用 GC.Collect(),但没有任何区别。我的连接字符串是“Data Source=.\SQLEXPRESS2005;AttachDbFilename=|DataDirectory|\Pricing.mdf;Integrated Security=True; User Instance=True”,我一直使用相同的连接。我没有看到我可以在哪里分离数据库以对抗连接字符串中的附加。
1 - 我如何释放这个东西?2 - 有没有比复制数据库更好的方法?该应用程序仅供我丈夫使用,因此如果他确实需要从备份中恢复,我将能够处理它。
谢谢!