SQL排他锁的解决方案
问题描述:
我有一个数据库叫做inOutSell
已经备份到D:/mydatabase.bak
现在的情况是我要用sql语句进行还原
语句如下:
USE inOutSell
RESTORE DATABASE inOutSell
FROM DISK = 'D:/mydatabase.bak'
WITH REPLACE
GO
可是出现了如下的问题
查询分析器报告如下:
服务器: 消息 3101,级别 16,状态 1,行 2
因为数据库正在使用,所以未能获得对数据库的排它访问权。
服务器: 消息 3013,级别 16,状态 1,行 2
RESTORE DATABASE 操作异常终止。
现在求解决方案 要求运用sql语句
create proc 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
--用法
use master
exec killspid '数据库名'
最新文章
- Uiautomator 2.0之Until类学习小记
- Nodejs&#183;理解Buffer
- 510C
- Duilib中系统消息在自己窗口类的使用
- 重要业务MySQL冷备解决方案
- android ListView隐藏FooterView(headerView)
- CodeForces 546D
- Windows修改hosts文件及位置
- tableview的reloadData应注意
- CollapsingToolbarLayoutDemo【可折叠式标题栏,顺便带有CardView卡片式布局】
- Toad DBA Suite for Oracle 12.6 64-bit Commercial 简单连接
- [LeetCode] Flatten a Multilevel Doubly Linked List 压平一个多层的双向链表
- [原] RTTI 为什么type_info 有比较操作
- JAVA验证身份证格式及合法性
- MySQL开发——【多表关系、引擎、外键、三范式】
- Cpu 主频与睿频
- 在CAD二次开发中使用进度条
- Java LinkedList
- 项目总结04:SQL批量导入数据:将具有多表关联的Excel数据,通过sql语句脚本的形式,导入到数据库
- 2018.12.18 bzoj5296: [Cqoi2018]破解D-H协议(bsgs)
热门文章
- js技巧(一)
- R 连接数据库长数字被科学计数法解决方法
- POJ_3279_(dfs)(状态)
- rxswift-self.usernameTF.rx.text.orEmpty.map
- HTTP常见状态码(404、400、500)等错误
- Ajax系列面试题总结
- C#文件路径问题
- BZOJ 4520: [Cqoi2016]K远点对 KDtree + 估价函数 + 堆
- Attention-based Model
- Oracle 数据库连接的一些坑