Lektion 3: Hinzufügen einer Ereignisklasse

In dieser Lektion fügen Sie eine Ereignisklasse zu einer Anwendungsdefinitionsdatei (Application Definition File, ADF) hinzu und aktualisieren dann die Instanz von Notification Services, um Änderungen auf die Anwendungsdatenbank anzuwenden. Sie können dann die Änderungen überprüfen, die an der Anwendungsdatenbank vorgenommen wurden.

Grundlagen zur Ereignisklasse

Eine Ereignisklasse repräsentiert einen Ereignistyp, der von Ihrer Notification Services-Anwendung verwendet wird. Beim Definieren einer Ereignisklasse definieren Sie einen Ereignistyp, der an Ihre Anwendung übermittelt und zum Generieren von Benachrichtigungen verwendet werden kann. Zur Ereignisklassendefinition gehören die Ereignisfeldernamen, Datentypen und Typmodifizierer.

Mithilfe einer Ereignisklasse können andere Informationen definiert werden, beispielsweise Indizes auf den Ereignisdaten und zusätzliche Tabellen. Weitere Informationen zu Ereignisklassen finden Sie unter Definieren von Ereignisklassen.

Wenn Sie die Anwendung erstellen, wird von Notification Services die Ereignisklassendefinition zum Erstellen von Tabellen, Ansichten, Indizes und gespeicherten Prozeduren verwendet, um Ereignisdaten zu speichern, zu sammeln und zu verwalten.

Die WeatherData-Ereignisklasse

Für diese Anwendung fügen Sie eine WeatherData-Ereignisklasse zur ADF hinzu. Diese Ereignisklasse verfügt über fünf Ereignisfelder: City, Date, Low, High und Forecast. Durch diese Ereignisfelder werden die Ereignisdaten beschrieben, die Sie später zur Anwendung übermitteln. Für jedes Ereignisfeld wird von der Ereignisklasse der Feldname, der Datentyp und Feldmodifizierer definiert.

Um die Leistung für die Benachrichtigungsgenerierung zu verbessern, wird von der Ereignisklasse auch ein Index auf dem City-Feld der WeatherData-Ereignisklasse angegeben.

Hinzufügen des Ereignisklassen-XML-Codes zur ADF

Durch den XML-Code in diesem Abschnitt wird die Ereignisklasse definiert. Überprüfen Sie den XML-Code, und folgen Sie dann den Anweisungen zum Kopieren des XML-Codes in den ADF-Code.

So fügen Sie den Ereignisklassen-XML-Code zur ADF hinzu

  1. Klicken Sie auf Code kopieren, um den XML-Code in die Windows-Zwischenablage zu kopieren.

    <!-- Event Classes -->
    <EventClasses>
      <EventClass>
        <EventClassName>WeatherData</EventClassName>
        <Schema>
          <Field>
            <FieldName>City</FieldName>
            <FieldType>nvarchar(35)</FieldType>
            <FieldTypeMods>not null</FieldTypeMods>
          </Field>
          <Field>
            <FieldName>Date</FieldName>
            <FieldType>datetime</FieldType>
            <FieldTypeMods>not null</FieldTypeMods>
          </Field>
          <Field>
            <FieldName>Low</FieldName>
            <FieldType>float</FieldType>
            <FieldTypeMods>not null</FieldTypeMods>
          </Field>
          <Field>
            <FieldName>High</FieldName>
            <FieldType>float</FieldType>
            <FieldTypeMods>not null</FieldTypeMods>
          </Field>
          <Field>
            <FieldName>Forecast</FieldName>
            <FieldType>nvarchar(3500)</FieldType>
            <FieldTypeMods>not null</FieldTypeMods>
          </Field>
        </Schema>
        <IndexSqlSchema>
          <SqlStatement>CREATE INDEX myIndex 
          ON WeatherData ( City );
          </SqlStatement>
        </IndexSqlSchema>
      </EventClass>
    </EventClasses>
    
  2. Öffnen Sie im Projektmappen-Explorer die Datei WeatherADF.xml.

  3. Ersetzen Sie den folgenden Kommentar durch den gerade kopierten XML-Code.

    <!-- Replace with EventClasses XML -->

  4. Klicken Sie im Menü Datei auf WeatherADF.xml speichern.

Aktualisieren der Instanz von Notification Services

Nach dem Ändern der ADF aktualisieren Sie die Instanz von Notification Services, um Ereignisklassenobjekte zur Anwendungsdatenbank hinzuzufügen.

So aktualisieren Sie die Instanz von Notification Services

  1. Erweitern Sie im Objekt-Explorer Notification Services.

  2. Klicken Sie mit der rechten Maustaste auf Lernprogramm, zeigen Sie auf Aufgaben, und wählen Sie dann Update aus.

  3. Klicken Sie im Dialogfeld Instanz aktualisieren auf Durchsuchen, suchen Sie die Datei TutorialICF.xml, wählen Sie sie aus, und klicken Sie dann auf Öffnen.

  4. Überprüfen Sie im Bereich Parameter die Werte für die Parameter.

    Die Werte sollten richtig sein, weil Sie sie in Lektion 2 wie erforderlich geändert haben. Wenn Sie diese Werte bearbeiten müssen, kehren Sie zu Lektion 2 zurück, um das Bearbeiten von Parameterstandards in der ICF zu erlernen.

  5. Klicken Sie auf OK.

  6. Überprüfen Sie das Dialogfeld Notification Services - Updatezusammenfassung, und klicken Sie dann auf Update.

  7. Klicken Sie nach dem Abschluss der Updateaktionen auf Schließen.

Überprüfen der Änderungen in der Anwendungsdatenbank

Beim Aktualisieren der Instanz werden von Notification Services Tabellen, Ansichten und gespeicherte Prozeduren für die Ereignisklasse in der TutorialWeather-Anwendungsdatenbank hinzugefügt.

  • Die dbo.WeatherData-Ereignissicht ist der aktuelle Satz von Ereignissen, der von der Anwendung verarbeitet wird. Wenn Sie später Benachrichtigungsgenerierungsabfragen schreiben, wählen Sie Daten aus dieser Sicht aus.
  • Die dbo.NSWeatherDataEvents-Tabelle ist die zugrunde liegende Tabelle, die Ereignisdaten für die Ereignisklasse enthält. Ereignisdaten verbleiben in dieser Tabelle, bis sie vom Vacuumer-Datenentfernungsprozess entfernt werden.
    ms167346.Caution(de-de,SQL.90).gifVorsicht:
    Ändern Sie keine Daten direkt in den Anwendungs- und Instanzdatenbanken. Um Ereignisdaten hinzuzufügen, müssen Sie eine der unterstützten Ereignisübermittlungsmethoden verwenden. Dazu gehören systemeigene Ereignisanbieter, gespeicherte Ereignisübermittlungsprozeduren und die API. Weitere Informationen finden Sie unter Definieren von Ereignisanbietern.

Sie können zum Überprüfen dieser Objekte in der TutorialWeather-Datenbank den Objekt-Explorer verwenden. Sie müssen möglicherweise die Ansicht des Objekt-Explorers aktualisieren, damit die neuen Objekte angezeigt werden.

Nächste Lektion

Lektion 4: Hinzufügen einer Benachrichtigungsklasse

Siehe auch

Konzepte

Notification Services-Lernprogramm

Andere Ressourcen

Definieren von Ereignisklassen
Erstellen von Benachrichtigungslösungen
Einführung in SQL Server Notification Services

Hilfe und Informationen

Informationsquellen für SQL Server 2005