Receive Top(25)などを指定しても、一度に1つのメッセージをデキューするだけです。私のsprocの中で何が間違っているのか分かりませんか?たぶん些細なことかもしれませんが、私はこの問題を見ません。Service Brokerは一度に1つのメッセージしか受信しません
SPROC:
CREATE PROCEDURE dbo.SPP_DEQUEUE_MESSAGE
AS
BEGIN
DECLARE @receiveTable TABLE(
message_type sysname,
message_body xml,
message_dialog uniqueidentifier);
BEGIN TRANSACTION;
WAITFOR
(RECEIVE TOP(25)
message_type_name,
message_body,
conversation_handle
FROM TargetQueue1DB
INTO @receiveTable
), TIMEOUT 3000;
SELECT
*
From @receiveTable;
Delete from @receiveTable;
COMMIT TRANSACTION;
END --End Sproc
私が間違っているの何任意のアイデア?
おかげで、
B
ありがとうPawel私はそれを見ていきます。私はその部分を見ていない...おそらく起こっていることです。 – scarpacci
これに例を挙げてください。 INSERTトリガーからメッセージを送信しているため、INSERTごとに別の会話を作成する必要があります。可能なすべてのメッセージをバッチで受信したいのですが、これは起こりません。また、(たとえBEGIN DIALOGでWITH RELATED_CONVERSATION_GROUPを使用しても)1つのグループで会話を移動する方法がわかりません。 – Mikhail