--查询分析器中执行下面的语句:/*
关闭用户打开的进程处理
*/
use master
goif exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[p_killspid]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[p_killspid]
GOcreate proc p_killspid
@dbname varchar(200) --要关闭进程的数据库名
as  
declare @sql  nvarchar(500)  
declare @spid nvarchar(20) declare #tb cursor for
select spid=cast(spid as varchar(20)) from master..sysprocesses where dbid=db_id(@dbname)
open #tb
fetch next from #tb into @spid
while @@fetch_status=0
begin  
exec('kill '+@spid)
fetch next from #tb into @spid
end  
close #tb
deallocate #tb
go--用法  
exec p_killspid  'test   '
goRESTORE    DATABASE   test   FROM    DISK='C:\\My Documents\\111.db'    WITH NORECOVERY

解决方案 »

  1.   

    你把Sql Server的服务器先停止一下,运行Dos命令,完成之后再让服务器运行,这样就可以了
      

  2.   

    停sql server 的服务器没用,我试过了
      

  3.   

    BACKUP   DATABASE   test   TO   Disk='C:\\My Documents\\111.db'   WITH    INIT
    GO
    use master
    go
    RESTORE    DATABASE   test   FROM    DISK='C:\\My Documents\\111.db'    WITH NORECOVERY
    GO
    我試過這樣也可以的.
      

  4.   

    试试这个:
    RESTORE DATABASE  test  FROM  DISK='C:\\My Documents\\111.db'  WITH RESTART
      

  5.   

    zjcxc(: 邹建 :)
    大侠我按照你的试了啊!但是还是不行啊!非要在数据库的本机操作吗?