通常のビューには、ステータスが関連付けられています。ステータスは、データベース・サーバが使用するビューの利用可能性を反映しています。すべてのビューのステータスを表示するには、Sybase Central の左ウィンドウ枠で [ビュー] を選択し、右ウィンドウ枠で [ステータス] カラムの値を検査します。また、単一のビューのステータスを表示するには、Sybase Central でビューを右クリックし、[プロパティ] を選択して [ステータス] の値を検査します。
通常のビューのステータスの種類について、次に説明します。
VALID ビューは有効で、その定義と一貫性があることが保証されています。データベース・サーバは、追加の作業なくこのビューを利用できます。有効にされたビューのステータスは VALID です。
SYSOBJECT システム・ビューで、値 1 はステータス VALID を表します。SYSOBJECT システム・ビューを参照してください。
INVALID INVALID ステータスは、参照先オブジェクトのスキーマ変更後に発生し、変更したためにビューを有効にしようとして失敗したことを表します。たとえば、ビュー v1 がテーブル t 内のカラム c1 を参照するとします。t を変更して c1 を削除する場合、カラムを削除する ALTER 操作の一環としてデータベース・サーバがビューを再コンパイルすると、v1 のステータスは INVALID に設定されます。このとき、v1 は c1 が t に追加された場合だけ再コンパイルできます。再コンパイルしない場合、v1 は c1 を参照しないように変更されます。ビューが参照するテーブルやビューを削除した場合も、そのビューは INVALID になります。
INVALID ビューは DISABLED ビューと異なり、クエリなどで INVALID ビューが参照されるたびに、データベース・サーバはそのビューを再コンパイルしようとします。コンパイルに成功すると、クエリが処理されます。ビューを明示的に有効にしないかぎり、ステータスは INVALID のままです。失敗した場合は、エラーが返されます。
データベース・サーバは、INVALID ビューを内部的に有効にすると、パフォーマンス警告を発行します。
SYSOBJECT システム・ビューで、値 2 はステータス INVALID を表します。SYSOBJECT システム・ビューを参照してください。
DISABLED 無効にされたビューは、データベース・サーバがクエリに応答するために使用できません。無効にされたビューを使用しようとするクエリは、エラーを返します。
通常のビューは、次の場合にこのステータスになります。
ビューを明示的に無効にした場合。ALTER VIEW ... DISABLE 文を実行した場合など。
そのビューが依存するビュー (マテリアライズド・ビューまたは非マテリアライズド・ビュー) を無効にした場合。
テーブルのビューの依存性を無効にした場合。ALTER TABLE ... DISABLE VIEW DEPENDENCIES 文を実行した場合など。
通常のビューの有効化と無効化については、通常のビューの有効化と無効化を参照してください。
SYSOBJECT システム・ビューで、値 4 はステータス DISABLED を表します。SYSOBJECT システム・ビューを参照してください。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |