当我尝试删除或还原数据库时,SQL Server不断告诉我正在使用数据库,但是当我运行此元数据查询时:

select * from sys.sysprocesses
where dbid
  in (select database_id from sys.databases where name = 'NameOfDb')

它什么也不返回。

有时它将返回1个进程,它是CHECKPOINT_QUEUE等待类型。如果我尝试终止该进程,它不会让我(无法终止非用户进程)。

有人知道怎么了吗?

最佳答案

可能有很多事情阻止您的数据库。例如,如果您在该数据库上打开了一个查询窗口,它将被您锁定。不计入外部访问,例如IIS上的Web应用程序。

如果您确实想强行删除它,请选中“关闭现有连接”选项,或尝试手动停止SQL Server的服务。

关于sql-server - SQL Server告诉我数据库正在使用中,但没有使用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/5105008/

10-11 01:31
查看更多