Opis powiadomienia o zdarzeniach
Powiadomienia o zdarzeniach wykonać w odpowiedzi na różne Transact-SQL instrukcji języka (DDL) definicja danych i zdarzeń śledzenia SQL przez wysyłanie informacji o tych zdarzeniach do Service Broker usługa.
Powiadomienia o zdarzeniach można wykonać następujące czynności:
Zaloguj się i przejrzeć zmiany lub działanie występujące w bazie danych.
Wykonanie akcja w odpowiedzi na zdarzenie w asynchronicznej zamiast w sposób synchroniczny.
Powiadomienia o zdarzeniach można zaoferować programowania alternatywę dla Wyzwalacze DDL i śledzenia SQL.
Powiadomienia o zdarzeniach uruchamiane asynchronicznie, poza zakres transakcji.Dlatego w przeciwieństwie do Wyzwalacze DDL powiadomień o zdarzeniach można wewnątrz aplikacji bazy danych do reagowania zdarzenie bez korzystania z zasobów określonych przez bezpośrednich transakcji.Aby uzyskać więcej informacji, zobacz Opis vs powiadomień o zdarzeniach. Wyzwalacze.
W przeciwieństwie do śledzenia SQL powiadomień o zdarzeniach służą do wykonywania akcja wewnątrz wystąpienie z SQL Server w odpowiedzi na zdarzenie śledzenia SQL.Aby uzyskać więcej informacji, zobacz Opis vs powiadomień o zdarzeniach. Śledzenia SQL.
Gdy powiadomienie o zdarzeniu jest tworzony jeden lub więcej Service Broker konwersacji między wystąpienie SQL Server i usługa miejsce docelowe określ, są otwierane.Konwersacje zazwyczaj pozostają otwarte jak powiadomienie o zdarzeniu istnieje jako obiekt na serwerze wystąpienie.W niektórych przypadkach błąd konwersacji można zamknąć przed powiadomienie o zdarzeniu jest odrzucany.Konwersacje te nigdy nie są współużytkowane zdarzenie powiadomienia.Każdy powiadomienie o zdarzeniu ma własny wyłączne konwersacji.Kończenie konwersacji jawnie uniemożliwia odbiera więcej wiadomości usługa miejsce docelowe i konwersacji nie zostanie ponownie następnego czas pożarów zdarzenia powiadamiania.
Informacje dotyczące zdarzeń jest dostarczana do Service Broker jako zmienna typu xml , zawiera informacje o po wystąpieniu zdarzenie dotyczące obiektu bazy danych, wpływ, Transact-SQL partia instrukcja i innych informacji.Aby uzyskać więcej informacji o schemacie XML, produkowane przez zdarzenie powiadomienia, zobacz EVENTDATA (Transact-SQL).
Dane zdarzenia mogą być używane przez aplikacje uruchomione wraz z SQL Server Śledzenie postępu i decyzje.Na przykład następujące powiadomienie o zdarzeniu do niektórych usług wysyła zawiadomienia co czas ALTER TABLE jest wydane w AdventureWorks2008R2 przykładowej bazy danych.
USE AdventureWorks2008R2;
GO
CREATE EVENT NOTIFICATION NotifyALTER_T1
ON DATABASE
FOR ALTER_TABLE
TO SERVICE '//Adventure-Works.com/ArchiveService' ,
'8140a771-3c4b-4479-8ac0-81008ab17984';
Przykładowy skrypt powiadomienia zdarzenie uruchamiające przeciwko AdventureWorks2008R2 Przykładowa baza danych, EventNotificationSample.sql, znajduje się w SQL ServerPrzykładowe aparat bazy danych.