NSEventFlushBatch<EventClassName> (Transact-SQL)
Chiude un batch di eventi aperto da NSEventBeginBatchEventClassName. Questa stored procedure esegue il commit della transazione di raccolta degli eventi e quindi contrassegna il batch di eventi come completato. Viene in genere utilizzata per l'inoltro di singoli eventi tramite Transact-SQL. Per ulteriori informazioni, vedere la sezione Osservazioni.
Sintassi
[ schema_name . ] NSEventFlushBatchEventClassName
[ @EventBatchId = ] event_batch_ID
[, [@EventCount = ] number_of_events]
Argomenti
[ @EventBatchId =] event_batch_ID
Numero di identificazione del batch di eventi di cui eseguire il commit. event_batch_ID è di tipo bigint e non prevede alcun valore predefinito.
[ @EventCount =] number_of_events
Numero di eventi inoltrati per il batch di eventi. La stored procedure ottiene il valore predefinito eseguendo una query sulla tabella degli eventi.
Set di risultati
Nome colonna | Tipo di dati | Descrizione |
---|---|---|
EventCount |
bigint |
Numero di eventi inoltrati nel batch di eventi. Questo numero viene specificato nell'argomento @EventCount oppure ottenuto eseguendo una query sulle tabelle degli eventi. |
Osservazioni
Notification Services crea la stored procedure NSEventFlushBatchEventClassName nel database dell'applicazione quando viene creata l'istanza. Quando si aggiorna l'applicazione, Notification Services ricompila la stored procedure.
Questa stored procedure è disponibile nello schema dell'applicazione, specificato dall'elemento SchemaName del file di definizione dell'applicazione (ADF). Se non si specifica un nome di schema, viene utilizzato lo schema predefinito dbo.
Per inoltrare singoli eventi a un'applicazione tramite Transact-SQL, utilizzare NSEventBeginBatchEventClassName per aprire il batch, NSEventWriteEventClassName per scrivere i singoli eventi e NSEventFlushBatchEventClassName per chiudere il batch di eventi.
Se si desidera eseguire una query per ottenere un set di eventi e quindi inviarli a un'applicazione, utilizzare NSEventSubmitBatchEventClassName.
Autorizzazioni
Le autorizzazioni di esecuzione vengono assegnate per impostazione predefinita ai membri dei ruoli di database NSEventProvider e NSRunService, del ruolo predefinito del database db_owner e del ruolo predefinito del server sysadmin.
Valori restituiti
0 (esito positivo) o 1 (esito negativo)
Esempi
Nell'esempio seguente viene illustrato come iniziare un batch di eventi, scrivere un evento e quindi chiudere il batch di eventi. Il provider di eventi per il batch di eventi è StockEP e il numero di identificazione del batch di eventi viene restituito nel parametro di output @BatchID.
L'applicazione utilizza le impostazioni predefinite di SchemaName, che prevedono l'inserimento di tutti gli oggetti dell'applicazione nello schema 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';
In questo esempio si presuppone l'utilizzo di Microsoft SQL Server Management Studio poiché l'ID del batch di eventi viene restituito nell'istruzione SELECT, consentendo di vedere quale batch di eventi è stato creato.
Vedere anche
Riferimento
Stored procedure di Notification Services (Transact-SQL)
Altre risorse
Report sulle prestazioni di Notification Services
SchemaName Element (ADF)