Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SAP Sybase SQL Anywhere 16.0 » SQL Anywhere サーバ SQL の使用法 » テーブル、ビュー、インデックス » マテリアライズドビュー » マテリアライズドビューを使用したパフォーマンスの向上

 

マテリアライズドビューとビューの依存性

マテリアライズドビューを有効または無効にすることで、データベースサーバがそのビューを使用できるかどうかを制御できます。無効になったマテリアライズドビューは、最適化時にオプティマイザによって検討されません。クエリが無効なマテリアライズドビューを明示的に参照している場合、そのクエリは失敗し、エラーが返されます。マテリアライズドビューを無効にすると、データベースサーバはそのビューのデータを削除しますが、定義はデータベース内に保持します。マテリアライズドビューをもう一度有効にすると、初期化されていない状態になるため、データを設定するためにはそのビューを再表示する必要があります。

マテリアライズドビューに依存する通常のビューは、マテリアライズドビューが無効になると、データベースサーバによって自動的に無効になります。その結果、マテリアライズドビューをもう一度有効にする場合は、すべての従属ビューをもう一度有効にする必要があります。このため、マテリアライズドビューを無効にする前に、ビューの依存性のリストを取得する場合があります。この操作は、sa_dependent_views システムプロシージャを使用して行います。このプロシージャは ISYSDEPENDENCY システムテーブルを検査して、従属ビューが存在する場合はそのリストを返します。

無効にされたオブジェクトに対する権限を付与できます。無効化されたオブジェクトに対する権限はデータベースに保存され、オブジェクトが有効になると使用できるようになります。

 参照