NSEventFlushBatch<EventClassName> (Transact-SQL)
Закрывает пакет событий, который был открыт NSEventBeginBatchEventClassName. Эта хранимая процедура фиксирует транзакцию сбора событий и затем помечает пакет событий как завершенный. Эта хранимая процедура обычно используется при подтверждении отдельных событий с использованием языка Transact-SQL. Дополнительные сведения см. в разделе «Примечания».
Синтаксис
[ schema_name . ] NSEventFlushBatchEventClassName
[ @EventBatchId = ] event_batch_ID
[, [@EventCount = ] number_of_events]
Аргументы
- [ @EventBatchId =] event_batch_ID
Идентификационный номер пакета событий для фиксации. Аргумент event_batch_ID имеет тип bigint и не имеет значения по умолчанию.
- [ @EventCount =] number_of_events
Количество событий, подтвержденных для пакета событий. Хранимая процедура получает значение по умолчанию, запрашивая таблицу событий.
Значения кодов возврата
0 (успешное завершение) или 1 (неуспешное завершение)
Результирующие наборы
Имя столбца | Тип данных | Описание |
---|---|---|
EventCount |
bigint |
Количество событий, подтвержденных в пакете событий. Это число либо указано в аргументе @EventCount, либо может быть получено запросом из таблицы событий. |
Замечания
Службы Notification Services создают хранимую процедуру NSEventFlushBatchEventClassName в базе данных приложений при создании экземпляра. При обновлении приложения 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';
В этом примере предполагается, что используется среда Microsoft SQL Server Management Studio, поскольку идентификатор пакета событий возвращается инструкцией SELECT, чтобы можно было видеть, какой пакет событий был создан.
См. также
Справочник
Хранимые процедуры служб Notification Services (Transact-SQL)
Другие ресурсы
Отчеты о производительности служб Notification Services
SchemaName Element (ADF)