2011-11-11 1 views
4

索引付けされたビューは数多く用意されていますが、もちろんスケマビリングが必要です。これらのビューをサポートする基本表は、レプリケーションに関係しています。私たちのDBAは最近、レプリケーションを再作成しなければならず、これらのすべてのインデックス付きビューは基本テーブルを削除して再作成できないため、悲しみを与えていたと言いました。SCHEMABINDINGを使用した索引付きビュー

彼は私に、インデックス付きビューのそれぞれで、「SCHEMABINDING」をコメントアウトし、ビュー定義を保存したと教えてくれました。彼がこれをしたとき、それぞれのビューの関連インデックスはどうなりましたか?削除されましたか?各ビューに戻り、SCHEMABINDINGコマンドを組み込み、関連する各インデックスを再作成する必要がありますか?

答えて

8

スキーマバインディングなしでビューにインデックスを付けることはできないため、インデックスが削除され、スキーマバインディングを追加してインデックスを再作成する必要があります。 http://msdn.microsoft.com/en-us/library/aa933148%28v=sql.80%29.aspx

EDIT:@RedFilter私はちょうどテストを行なったし、あなたがビューまたはDROPingを変更し、それを再作成することにより、SCHEMABINDINGを削除するかどうか、インデックスが削除されます。

0

はい、各ビューに戻り、SCHEMABINDINGコマンドを含めてから、関連する各インデックスを再作成する必要があります。

IIRCでは、インデックスはまだ存在しますが、使用されていません。右クリックするだけで、DDLを生成してインデックスを変更して実行することができます。これを簡単にスクリプト化して自動化することができます。

関連する問題