NSEventBeginBatch<EventClassName> (Transact-SQL)

Создает новый пакет событий для приложения служб MicrosoftSQL ServerNotification Services. Как правило, эта хранимая процедура используется для открытия нового пакета событий, поэтому отправить отдельные события можно с помощью языка Transact-SQL. Дополнительные сведения см. в разделе «Примечания».

Синтаксис

[ schema_name . ] NSEventBeginBatchEventClassName
    [ @ProviderName = ] 'event_provider_name',
    [ @EventBatchId = ] event_batch_variable OUTPUT

Аргументы

  • [ @ProviderName =] 'event_provider_name'
    Имя поставщика событий, отправившего события. Аргумент event_provider_name имеет тип nvarchar(255) и не имеет значения по умолчанию.
  • [ @EventBatchId =] event_batch_variable OUTPUT
    Идентификатор пакета событий, назначаемый пакету событий, если пакет создан успешно. Аргумент event_batch_variable является выходной переменной типа bigint и не имеет значения по умолчанию.

Значения кодов возврата

0 (успешное завершение) или 1 (неуспешное завершение)

Результирующие наборы

Имя столбца Тип данных Описание

EventBatch

Bigint

Идентификатор пакета событий, созданный для нового пакета событий.

Замечания

Службы Notification Services создают хранимую процедуру NSEventBeginBatchEventClassName в базе данных приложения при создании экземпляра. При обновлении приложения службы Notification Services повторно компилируют эту хранимую процедуру.

Эта хранимая процедура находится в схеме приложения, указанной элементом SchemaName файла определения приложения (ADF-файл). Если имя схемы не указано, применяется схема по умолчанию dbo.

Чтобы передать приложению отдельные события с помощью языка Transact-SQL, можно воспользоваться инструкциями NSEventBeginBatchEventClassName для открытия пакета, NSEventWriteEventClassName для записи отдельных событий и NSEventFlushBatchEventClassName для закрытия пакета событий.

Чтобы получить набор событий, а затем передать их приложению с помощью запроса, используйте инструкцию NSEventSubmitBatchEventClassName.

Разрешения

Разрешения на запуск по умолчанию имеют члены ролей NSEventProvider и NSRunService базы данных, фиксированной роли базы данных db_owner и фиксированной серверной роли sysadmin.

Примеры

В следующем примере показано, как начать пакет событий, записать в него одно событие и закрыть. В качестве поставщика событий для пакета событий выступает аргумент StockEP, а идентификатор пакета событий возвращается в выходном аргументе @BatchID.

Приложение использует настройки схемы SchemaName по умолчанию, при которых все объекты приложения помещаются в схему dbo.

DECLARE @BatchID bigint;
EXEC dbo.NSEventBeginBatchStockEvents N'StockEP', @BatchID OUTPUT;
EXEC dbo.NSEventWriteStockEvents
   @EventBatchId=@BatchID,
   @StockSymbol=N'AWKS',
   @StockPrice=68.14;
EXEC dbo.NSEventFlushBatchStockEvents @BatchID;
SELECT @BatchID 'Event Batch';

В этом примере предполагается, что используется среда SQL Server Management Studio, так как идентификатор пакета событий возвращен инструкцией SELECT, и можно увидеть, какой пакет событий был создан.

См. также

Справочник

Хранимые процедуры служб Notification Services (Transact-SQL)

Другие ресурсы

Отчеты о производительности служб Notification Services
SchemaName Element (ADF)

Справка и поддержка

Получение помощи по SQL Server 2005