イベント記録テーブルの定義
イベント記録は、アプリケーション データベースの補足イベント テーブルです。イベント記録を使用してイベント データを格納する場合、イベント クラスを定義する際に記録テーブルを定義する必要があります。
記録テーブル
イベント クラスを定義する際に、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)
);
メモ : |
---|
XML ファイルでアプリケーションを定義している場合、">" などの XML 予約文字をエンティティ参照で置き換える必要があります。詳細については、「XML の予約文字」を参照してください。 |
イベント記録テーブルを定義するには
参照
概念
コア イベント クラス プロパティの定義
イベント クラスのインデックスの定義
Notification Services のセキュリティの設定
Notification Services データベース ロール
その他の技術情報
イベント クラスの定義
Notification Services アプリケーションの定義