NHibernate:释放 .mdf 文件

Posted

技术标签:

【中文标题】NHibernate:释放 .mdf 文件【英文标题】:NHibernate: Freeing .mdf file 【发布时间】:2009-01-15 11:28:55 【问题描述】:

我在一个项目中使用 NHibernate。该项目打开一个 SQL Server 2005 数据库,然后,在所有工作完成后,它应该备份数据库。问题是 SQL Server 在调用 factory.Close() 后保持句柄打开,因此备份副本失败。如何关闭文件句柄?提前致谢。

【问题讨论】:

【参考方案1】:

如果您尝试制作数据库文件的副本,您可以使数据库脱机。

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'

【讨论】:

我同意并补充:您使用 BACKUP 命令在线备份 MS SQL 数据库。你不要让它离线并复制它 我同意,但想确保我回答了他的问题,即如何关闭文件句柄。

以上是关于NHibernate:释放 .mdf 文件的主要内容,如果未能解决你的问题,请参考以下文章

NHibernate教程(19) —— 一级缓存

nhibernate教程--条件查询(Criteria Query)

NHibernate3剖析:Query篇之NHibernate.Linq增强查询

具有多个结果集的NHibernate存储过程[重复]

NHibernate3剖析:Mapping篇之集合映射基础:List映射

插入时 NHibernate 组件非空属性