次の方法で共有


サブスクリプション クラスのインデックスの定義

Notification Services アプリケーションのパフォーマンスは、適切なインデックスを作成し、指定フィールドのデータに基づいてレコードが高速に検索されるようにすることで、大幅に向上させることができます。SQL Server では、インデックスは必要に応じて自動的に使用されます。

定期的なルールが設定されているサブスクリプション クラスの場合、Notification Services は自動的に ScheduleId 列にインデックスを作成します。

カスタム インデックス

インデックス作成ステートメントを記述することによって、サブスクリプション クラスにカスタム インデックスを追加できます。次の例は、WeatherSubscriptions テーブルの City 列にインデックスを作成する Transact-SQL 構文を示しています。

CREATE INDEX CityIndex
ON dbo.WeatherSubscriptions (City);

サブスクリプション テーブルには、サブスクリプション クラスと同じ名前が付いていることに注意してください。サブスクリプション クラス名とフィールド名さえわかればインデックスを作成できます。

また、各オブジェクト名の前にスキーマ名 (この例では dbo) が付いています。複数のアプリケーションで 1 つのデータベースを共有する可能性があるため、スキーマ名を指定することをお勧めします。アプリケーション データベースを定義するときにスキーマ名を指定する場合は、アプリケーション スキーマ名を使用します。既定のアプリケーション スキーマは dbo です。詳細については、「アプリケーション データベースの定義」を参照してください。

Notification Services は、アプリケーションを作成するときにサブスクリプション クラスのテーブルを作成し、それからカスタム インデックスを追加します。アプリケーションの更新時にサブスクリプション クラスに何らかの変更が発生している場合、Notification Services はサブスクリプション テーブルの名前を変更して、末尾に "Old" が付いた名前にします。テーブルの名前が変わっても、インデックスとの関連付けは維持されます。詳細については、「アプリケーションの更新」を参照してください。

SQL Server のインデックスの詳細については、「インデックス」を参照してください。

サブスクリプション クラスのカスタム インデックスを定義するには

XML でアプリケーションを定義している場合は、アプリケーション定義ファイル (ADF) でカスタム インデックスを定義します。プログラムでアプリケーションを定義している場合は、Notification Services 管理オブジェクト (NMO) を使用してカスタム インデックスを定義します。

参照

その他の技術情報

CREATE INDEX (Transact-SQL)
インデックス
サブスクリプション クラスの定義
Notification Services アプリケーションの定義

ヘルプおよび情報

SQL Server 2005 の参考資料の入手