次の方法で共有


イベント記録テーブルの定義

イベント記録は、アプリケーション データベースの補足イベント テーブルです。イベント記録を使用してイベント データを格納する場合、イベント クラスを定義する際に記録テーブルを定義する必要があります。

記録テーブル

イベント クラスを定義する際に、Transact-SQL を使用して、1 つ以上の記録テーブルを定義できます。CREATE TABLE ステートメントでは、テーブル名、フィールド名、およびフィールドのデータ型を指定する必要があります。このステートメントでは、制約およびその他オプションの CREATE TABLE パラメータの引数を指定することもできます。CREATE INDEX ステートメントを含めることで、イベント記録テーブルにインデックスを作成できます。詳細については、「CREATE TABLE (Transact-SQL)」を参照してください。

アプリケーションからアクセスできる任意のデータベースの任意のスキーマに記録テーブルを作成できます。具体的には、イベント記録ルールとサブスクリプション ルールを実行するジェネレータが、イベント記録テーブルのデータを読み取りおよび書き込みできるようにする必要があります。

アプリケーションを更新した場合でも、Notification Services がイベント記録テーブルを自動的に削除することはありません。同じ名前のテーブルが存在する場合、記録テーブルを作成するステートメントがエラーになります。INFORMATION_SCHEMA.TABLES ビューを使用して、同じ名前のテーブルが存在するかどうかを確認します。存在する場合は、テーブルの作成をスキップするか、または既存のテーブルを削除してからテーブルを再作成します。

次の例は、dbo.StockEventChron という名前の既存のテーブルを削除して、2 つの列 (StockSymbol および StockHighPrice) を持ち、StockSymbol が主キーの StockEvents イベント クラスに対する記録を作成する方法を示しています。

IF EXISTS (SELECT * FROM INFORMATION_SCHEMA.TABLES
    WHERE TABLE_NAME = 'StockEventsChron'
        AND TABLE_SCHEMA = 'dbo')
    DROP TABLE dbo.StockEventsChron;
    CREATE TABLE dbo.StockEventsChron
    (
    StockSymbol char(10),
    StockHighPrice decimal(18,5)
    PRIMARY KEY (StockSymbol)
    );
ms172478.note(ja-jp,SQL.90).gifメモ :
XML ファイルでアプリケーションを定義している場合、">" などの XML 予約文字をエンティティ参照で置き換える必要があります。詳細については、「XML の予約文字」を参照してください。

イベント記録テーブルを定義するには

参照

概念

コア イベント クラス プロパティの定義
イベント クラスのインデックスの定義
Notification Services のセキュリティの設定
Notification Services データベース ロール

その他の技術情報

イベント クラスの定義
Notification Services アプリケーションの定義

ヘルプおよび情報

SQL Server 2005 の参考資料の入手