SQL запрос удаления соединений базы. Нужно заполнить переменную @dbname. Чаще всего блокируют базу процессы в статусе sleeping их отбор закоментирован в коде: –and status=’sleeping’
set nocount on
declare @dbname varchar(100)
declare @query varchar(max)
set @query = ''
set @dbname = 'erp'
select 'Процессы до удаления:'
select db_name(dbid) as db, spid as idproc, loginame, program_name, status from sys.sysprocesses where db_name(dbid) = @dbname
select @query=coalesce(@query,',' )+'kill '+convert(varchar, spid)+ '; '
from sys.sysprocesses where dbid=db_id(@dbname) --and status='sleeping'
if len(@query) > 0
begin
print 'Будут удалены: '+@query
exec(@query)
select 'Процессы после удаления:'
select db_name(dbid) as db, spid as idproc, loginame, program_name, status from sys.sysprocesses where db_name(dbid) = @dbname
end
+ Нет комментариев
Добавить свой