备份一个Test数据库为例:
backup database Test to disk ='d:/TESTDB'
下面还原该数据库,首先要关闭该数据库的连接,否则无法还原成功.--查询分析器中,用下面的代码来处理 /**//* 断开所有用户打开的连接 */ use master go if exists (select * from dbo.sysobjects where id = object_id(N'[dbo]. [p_killspid]') and OBJECTPROPERTY(id, N'IsProcedure') = 1) drop procedure [dbo].[p_killspid] GO create proc p_killspid @dbname sysname --要关闭进程的数据库名 as declare @s nvarchar(1000) declare tb cursor local for select s='kill '+cast(spid as varchar) from master..sysprocesses where dbid=db_id(@dbname) open tb fetch next from tb into @s while @@fetch_status=0 begin exec(@s) fetch next from tb into @s end close tb deallocate tb go --用法 exec p_killspid 'TESTDB' --恢复数据库. RESTORE DATABASE test FROM disk='D:/TESTDB'