引发以下异常:

错误消息:Microsoft.SqlServer.Management.Smo.FailedOperationException:删除数据库'4d982a46-58cb-4ddb-8999-28bd5bb900c7'失败。 ---> Microsoft.SqlServer.Management.Common.ExecutionFailureException:执行Transact-SQL语句或批处理时发生异常。 ---> System.Data.SqlClient.SqlException:无法删除数据库“ 4d982a46-58cb-4ddb-8999-28bd5bb900c7”,因为该数据库当前正在使用中。

知道是什么原因造成的吗?

是否可以调用SMO函数来完成所有正在运行的Transact-SQL语句?

最佳答案

猜测一下,我想知道您的连接池是否对您不利-也就是说,您先前已经在SqlConnection上执行了一些命令,这些命令现在被保留以供重复使用。您可以尝试禁用池化吗? (连接字符串IIRC中的pooling = false)。

另外-您是否小心关闭所有命令/连接/阅读器等?理想地通过using吗?作为最后的选择,您可以尝试使用T-SQL杀死计算机上的所有其他spd-hacky,但它可能会起作用。

10-06 10:57