筆記113 當很多連接到你的數據庫時,報這種錯誤“已超過了鎖請求超時時段” 直接把下在面的存儲過程 放到你的Master數據庫執行一下就可以了
1 --當很多連接到你的數據庫時,報這種錯誤“已超過了鎖請求超時時段” 2 --直接把下在面的存儲過程 放到你的Master數據庫執行一下就可以了 3 USE pratice 4 SET ANSI_NULLS ON 5 SET QUOTED_IDENTIFIER ON 6 go 7 8 ALTER PROC [dbo].[Sp_KillAllProcessInDB] @DbName VARCHAR(100) 9 AS 10 IF DB_ID(@DbName) = NULL 11 BEGIN 12 PRINT 'DataBase dose not Exist' 13 END 14 ELSE 15 BEGIN 16 DECLARE @killspId VARCHAR(30) 17 DECLARE TmpCursor CURSOR 18 FOR 19 SELECT 'Kill ' + CONVERT(VARCHAR, spid) AS spId 20 FROM master..SysProcesses 21 WHERE DB_NAME(dbid) = @DbName 22 AND spid <> @@spid --終止不是當前進程的進程(不等於當前進程) 23 AND dbid <> 0 --數據庫ID不是0 24 OPEN TmpCursor 25 FETCH NEXT FROM TmpCursor 26 27 INTO @killspId --select into @killspId 28 WHILE @@FETCH_STATUS = 0 29 BEGIN 30 EXEC (@killspId) 31 FETCH NEXT FROM TmpCursor 32 INTO @killspId 33 34 END 35 36 CLOSE TmpCursor 37 DEALLOCATE TmpCursor 38 END 39 40 41 --exec Sp_KillAllProcessInDB '要訪問的數據庫'