zoukankan      html  css  js  c++  java
  • SqlServer:此数据库处于单用户模式,导致数据库无法删除的处理

    今天在删除一个数据库时,一直报错,大意是:此数据库处理单用户模式,尚在连接当中,无法删除(既使将SQLServer停止后再启动也是如此)

    百度之后找到了解决办法,备份于此:

    USE [master]
    GO
    
    /****** Object:  StoredProcedure [dbo].[killspid]    Script Date: 03/28/2011 11:01:32 ******/
    SET ANSI_NULLS ON
    GO
    
    SET QUOTED_IDENTIFIER ON
    GO
    
      --建一个存储过程,断开所有用户连接。   
      create   proc   [dbo].[killspid]   (@dbname   varchar(20))   
      as   
      begin   
      declare   @sql   nvarchar(500)   
      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<>-1   
      begin   
      exec('kill   '+@spid)   
      fetch   next   from   getspid   into   @spid   
      end   
      close   getspid   
      deallocate   getspid   
      end   
        
    
    GO
    

    先在master中创建一个存储过程,用于干掉所有连接,然后调用

     use   master   
     exec   killspid   '出问题的数据库名'
    

    再删除就ok了

    作者:菩提树下的杨过
    出处:http://yjmyzz.cnblogs.com
    本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
  • 相关阅读:
    面向对象
    用JS添加和删除class类名
    偶然
    js-cookie的用法
    eleemnt-ui修改主题颜色
    router.go,router.push,router.replace的区别
    vue生产环境清除console.log
    特别关心
    echart
    20182330魏冰妍_预备作业
  • 原文地址:https://www.cnblogs.com/yjmyzz/p/1997537.html
Copyright © 2011-2022 走看看