sqlserver清空service broker中的队列的语句分享
2018-10-12 14:11
483 查看
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
那么客户端接受到的消息如果没有处理,也会积攒在客户端队列中,其实就相当于许多未读邮件,我们可以使用以下脚本读取队列 ,读取后队列自动清空:
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 ;
相关文章推荐
- sqlserver清空service broker中的队列的语句分享
- sqlserver 锁表语句分享
- sqlserver 动态创建临时表的语句分享
- SQLServer日志清空语句(sql2000,sql2005,sql2008)
- SQLServer日志清空语句(sql2000,sql2005,sql2008)
- 【SSB】清空service broker中的队列
- 【SqlServer】 分享 几个 优化 Sql 的 语句
- (喷血分享)利用.NET生成数据库表的创建脚本,类似SqlServer编写表的CREATE语句
- sqlserver 锁表语句分享
- (喷血分享)利用.NET生成数据库表的创建脚本,类似SqlServer编写表的CREATE语句
- (喷血分享)利用.NET生成数据库表的创建脚本,类似SqlServer编写表的CREATE语句
- sqlserver 动态创建临时表的语句分享
- sqlserver 锁表语句分享
- (喷血分享)利用.NET生成数据库表的创建脚本,类似SqlServer编写表的CREATE语句
- 清空sqlserver日志
- SqlServer--bat批处理执行sql语句1-osql
- sqlserver sql语句|经典sql语句|实用sql语句
- 清空sqlserver当前日志信息!
- SqlServer快速检索某个字段在哪些存储过程中(sql 语句)
- Oracle to_char 日期转换字符串语句分享