Даже когда я указываю Receive Top (25) и т. Д., Я получаю только одно сообщение, которое будет удалено из очереди за один раз.Не уверен, что я делаю не так внутри моего sproc?Возможно, что-то тривиально, но я не вижу проблемы.
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