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 の使用法 » テーブル、ビュー、インデックス » ビュー » 通常のビュー

 

通常のビューの無効化または有効化 (Sybase Central の場合)

通常のビューを有効または無効にすることで、データベースサーバがそのビューを使用できるかどうかを制御できます。

前提条件

所有者であるか、または次のいずれかの権限を持っていることが必要です。

  • ALTER ANY VIEW システム権限
  • ALTER ANY OBJECT システム権限

通常のビューを「有効にする」には、基本となるテーブルに対する SELECT 権限または SELECT ANY TABLE システム権限必要です。

通常のビューを有効にする前に、そのビューが参照する無効なビューを再度有効にする必要があります。

 ♦ タスク
  1. Sybase Central で、[SQL Anywhere 16] プラグインを使用してデータベースに接続します。

  2. 左ウィンドウ枠で、[ビュー] をダブルクリックします。

  3. 通常のビューを無効にするには、ビューを右クリックし、[無効にする] をクリックします。

  4. 通常のビューを有効にするには、ビューを右クリックし、[再コンパイルして有効にする] をクリックします。

結果

通常のビューを無効にした場合、データベースサーバはデータベース内のビューの定義を保持しますが、クエリを満たすときにそのビューを使用できません。

無効なビューをクエリが明示的に参照すると、そのクエリは失敗し、エラーが返されます。

次の手順

このため、ビューを再度有効にしたら、無効にした時点でそのビューに依存していた他のすべてのビューを、もう一度有効にする必要があります。ビューを無効にする前に sa_dependent_views システムプロシージャを使用することで、従属ビューのリストを特定できます。

通常のビューを有効にすると、データベースサーバはデータベース内に格納されたビューの定義を使用してそのビューを再コンパイルします。コンパイルが成功すると、ビューのステータスが VALID に変更されます。再コンパイルに失敗した場合、1 つ以上の参照先オブジェクトでスキーマが変更された可能性があります。その場合は、ビュー定義と参照先のオブジェクトのどちらかを変更し、相互に整合させてから、ビューを有効にします。

ビューが無効になったら、データベースサーバがそのビューを使用できるように、明示的にもう一度有効にする必要があります。

 参照