sqlserver清空service broker中的隊列的語句分享
更新時間:2011年08月28日 22:10:37 作者:
在我們開發(fā)service broker應(yīng)用時候,可能用于測試或者客戶端沒有配置正確等導(dǎo)致服務(wù)端隊列存在很多垃圾隊列,不便于我們排查錯誤,我們可以使用SQL腳本來清空服務(wù)端這些垃圾數(shù)據(jù)
復(fù)制代碼 代碼如下:
USE TestDB
declare @conversation uniqueidentifier
while exists (select 1 from sys.transmission_queue )
begin
set @conversation = (select top 1 conversation_handle from sys.transmission_queue )
end conversation @conversation with cleanup
end
那么客戶端接受到的消息如果沒有處理,也會積攢在客戶端隊列中,其實(shí)就相當(dāng)于許多未讀郵件,我們可以使用以下腳本讀取隊列 ,讀取后隊列自動清空:
復(fù)制代碼 代碼如下:
USE TestDB
DECLARE @RecvReplyMsg NVARCHAR(100) ;
DECLARE @RecvReplyDlgHandle UNIQUEIDENTIFIER ;
BEGIN TRANSACTION ;
WHILE ( 1 = 1 )
BEGIN
WAITFOR
( RECEIVE TOP(1)
@RecvReplyDlgHandle = conversation_handle,
@RecvReplyMsg = message_body
FROM dbo.Test_TargetQueue
), TIMEOUT 1000 ;
END CONVERSATION @RecvReplyDlgHandle ;
SELECT @RecvReplyMsg AS ReceivedReplyMsg ;
END
COMMIT TRANSACTION ;
相關(guān)文章
sqlserver中向表中插入多行數(shù)據(jù)的insert語句
關(guān)于sql 2000中如何使用insert語句插入多行記錄,可是郁悶壞了我。2010-08-08SqlServer中tempdb的日志機(jī)制原理解析及示例分享
tempdb為什么比其他數(shù)據(jù)庫快?估計95%以上的程序員們都一臉茫然.Tempdb作為Sqlserver的重要特征,一直以來大家對它可能即熟悉又陌生.熟悉是我們時時刻刻都在用,陌生可能是很少有人關(guān)注它的運(yùn)行機(jī)制.這次我將通過實(shí)例給大家介紹下tempdb的日志機(jī)制.2014-08-08判斷一個表的數(shù)據(jù)不在另一個表中最優(yōu)秀方法
判斷一個表的數(shù)據(jù)不在另一個表中最優(yōu)秀方法2009-11-11sql清空表數(shù)據(jù)后重新添加數(shù)據(jù)存儲過程的示例
這篇文章主要介紹了sql清空表數(shù)據(jù)后重新添加數(shù)據(jù)存儲過程的示例,需要的朋友可以參考下2014-04-04MSSQL附加數(shù)據(jù)庫拒絕訪問提示5120錯誤的處理方法
這篇文章主要介紹了MSSQL附加數(shù)據(jù)庫拒絕訪問提示5120錯誤的處理方法,需要的朋友可以參考下2014-07-07使用sqlserver存儲過程sp_send_dbmail發(fā)送郵件配置方法(圖文)
這篇文章用圖文的方式介紹了使用sqlserver存儲過程sp_send_dbmail發(fā)送郵件的方法,大家參考使用吧2014-01-01