数据库恢复时出现正在数据库使用,不能恢复

ChrisCai 2004-01-13 03:32:52
我在库test中写一个存贮过程
CREATE PROCEDURE sdDB_Restore
@DatabaseName varchar(40),
@FileName varchar(80)
AS
Restore Database @DatabaseName From DISK=@FileName
GO

运行时会出现正在数据库使用,不能恢复。
其实只要有人在用这个数据库都会出现这种情况。
在网络系统中怎么办?谢谢 !
...全文
87 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
txlicenhe 2004-01-13
  • 打赏
  • 举报
回复
可用如下方式关闭

use master
go
create proc killspid (@dbname varchar(20))
as
begin
declare @sql nvarchar(500),@temp varchar(1000)
declare @spid int
set @sql='declare getspid cursor for
select spid from sysprocesses where dbid=db_id('''+@dbname+''')'
exec (@sql)
open getspid
fetch next from getspid into @spid
while @@fetch_status =0
begin
set @temp='kill '+rtrim(@spid)
exec(@temp)
fetch next from getspid into @spid
end
close getspid
deallocate getspid
end

--用法
use master
exec killspid '数据库名'

22,294

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 疑难问题
社区管理员
  • 疑难问题社区
  • 尘觉
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧