删除服务代理队列中的消息

问题描述 投票:17回答:5

我想在SQL Server Management Studio中清除队列,但我不想删除整个队列,而只是删除队列中的内容(消息)。

sql-server queue service-broker
5个回答
16
投票

类似这样的方法应该起作用:


47
投票

为了清楚起见,只需结合先前的两个答案(由Ben和Jānis撰写)。这对我有用:


9
投票

我会使用end conversation(也会从所有队列中删除所有相关消息),使用语句:


1
投票

如果使用的是SQL Server(从2008开始),则可以使用RECEIVE


-2
投票
while(1=1)
begin
    waitfor (
        receive top(1)
        conversation_group_id
        from kartokumaqueue2), timeout 1000;

        if(@@ROWCOUNT = 0) break;
end
© www.soinside.com 2019 - 2024. All rights reserved.