我正在使用NHibernate进行项目。该项目打开一个SQL Server 2005数据库,然后,在完成所有工作后,它应该备份数据库。问题是SQL Server在调用factory.Close()后保持句柄打开,因此备份副本失败。如何关闭文件句柄?提前谢谢。
答案 0 :(得分:2)
如果您正在尝试制作数据库文件的副本,则可以使数据库脱机。
ALTER DATABASE AdventureWorks SET OFFLINE
--Copy the data file
ALTER DATABASE AdventureWorks SET ONLINE
要进行在线备份,您可以使用BACKUP DATABASE命令。
BACKUP DATABASE AdventureWorks
TO DISK = 'Z:\SQLServerBackups\AdvWorksData.bak'