运行程序提示错误》》》因为数据库正在使用,所以无法获得对数据库的独占访问权。RESTORE DATABASE 正在异常终止。
这个错误提示经过几天的排查终于解决,一个连接池可以多次使用但是,在进行数据库的还原的时候要求“独占访问权”。刚开始我是努力检查 SqlConnection是否已经Close(),后来检查了两天发现都关闭了啊,最后想想就在连接语句中添加 Pooling=False 意思是不允许使用连接池。修改后的连接语句如下:
string lj = "Data Source=" + re + ";Initial Catalog=" + database + ";Integrated Security=True ooling=False";
之前在网上看资料说用 类似for语句关闭所有连接(c# 或者 sql),但是到后面问题还是没有得到解决。
问题终于得到解决,这类似问题总结了一个逻辑解决办法 1 检查连接池是否关闭 2 如果无法跟中关闭所有连接,那么就不允许使用连接池。 |