Materialized View Dialog

マテリアライズドビュー ダイアログを使用して、マテリアライズドビューを定義します。マテリアライズドビューは、クエリの結果セットを含む格納またはキャッシュされたビューです。REFRESHMATERIALIZEDVIEWコマンドを使用して、マテリアライズドビューのコンテンツを更新します。

MaterializedView ダイアログは、 General 、 Definition 、 Storage 、 Parameter 、および Security のダイアログタブを使用してmaterialized_viewの開発を整理します。 SQL タブには、ダイアログ選択によって生成されたSQLコードが表示されます。

マテリアライズドビューダイアログの一般タブ

General タブのフィールドを使用して、マテリアライズドビューを識別します。

  • Name フィールドを使用して、マテリアライズドビューの説明的な名前を追加します。名前は pgAdmin ツリーコントロールに表示されます。

  • 所有者 の横にあるドロップダウンリストボックスを使用して、マテリアライズドビューを所有するロールを選択します。

  • Schema フィールドのドロップダウンリストボックスから、マテリアライズドビューが存在するスキーマの名前を選択します。

  • マテリアライズドビューに関するメモを Comment フィールドに保存します。

[ 定義 ]タブをクリックして続行します。

マテリアライズドビューダイアログの定義タブ

[ 定義 ]タブのテキストエディターフィールドを使用して、マテリアライズドビューにデータを入力するクエリを提供します。既存のマテリアライズドビューの定義を更新すると、パラメーター(テーブル、トースト)、セキュリティ(特権とセキュリティラベル)、インデックス、およびその他の依存オブジェクトが失われることに注意してください。

[ ストレージ ]タブをクリックして続行します。

マテリアライズドビューダイアログのストレージタブ

Storage タブのフィールドを使用して、マテリアライズドビューを維持します。

  • WithData スイッチを Yes の位置に移動して、作成時にマテリアライズドビューを移入することを指定します。そうでない場合、REFRESHMATERIALIZEDVIEWを呼び出すまでマテリアライズドビューを照会できません。

  • Tablespace の横にあるドロップダウンリストボックスを使用して、マテリアライズドビューの場所を選択します。

  • FillFactor フィールドを使用して、マテリアライズドビューのフィルファクターを指定します。テーブルのフィルファクターは、10〜100のパーセンテージです。デフォルトは100(完全なパッキング)です。

[ パラメーター ]タブをクリックして続行します。

マテリアライズドビューダイアログのパラメータータブ

Parameter タブ内にネストされたタブを使用して、VACUUMおよびANALYZEのしきい値を指定します。 テーブル タブと トーストテーブル タブを使用して、テーブルと関連するトーストテーブルの値をカスタマイズします。デフォルト値を変更するには:

  • Customauto-vacuum? スイッチを Yes の位置に移動して、マテリアライズドビューでカスタムメンテナンスを実行し、 バキュームテーブル で値を選択します。 バキュームテーブル は、メンテナンス操作のデフォルト値を提供します。

  • Autovacuumenabled? を Notset に変更すると、autovacuum_enabledがリセットされます。

[ セキュリティ ]タブをクリックして続行します。

マテリアライズドビューダイアログのセキュリティタブ

[ セキュリティ ]タブを使用して、特権を割り当て、セキュリティラベルを定義します。

Privileges パネルを使用して、ロールに特権を割り当てます。 Add アイコン(+)をクリックして、マテリアライズドビューの特権を設定します。

  • Grantee フィールドのドロップダウンリストボックスからロールの名前を選択します。

  • Privileges フィールド内をクリックします。1つ以上の権限の左側にあるチェックボックスをオンにして、選択した権限を指定されたユーザーに付与します。

  • 特権を付与するためのデフォルトの付与者である現在のユーザーが、 Grantor フィールドに表示されます。

Add アイコン(+)をクリックして、追加の特権を割り当てます。特権を破棄するには、行の左側にあるゴミ箱アイコンをクリックし、 DeleteRow ポップアップで削除を確認します。

SecurityLabels パネルを使用して、マテリアライズドビューに適用されるセキュリティラベルを定義します。 Add アイコン(+)をクリックして、各セキュリティラベルの選択を追加します。

  • Provider フィールドでセキュリティラベルプロバイダーを指定します。名前付きプロバイダーをロードし、提案されたラベル付け操作に同意する必要があります。

  • SecurityLabel フィールドにセキュリティラベルを指定します。特定のラベルの意味は、ラベルプロバイダーの裁量にあります。PostgreSQLは、ラベルプロバイダーがセキュリティラベルを解釈する必要があるかどうか、またはどのように解釈するかについて制限を設けていません。それらを格納するメカニズムを提供するだけです。

Add アイコン(+)をクリックして、追加のセキュリティラベルを割り当てます。セキュリティラベルを破棄するには、行の左側にあるゴミ箱アイコンをクリックし、 DeleteRow ポップアップで削除を確認します。

SQL タブをクリックして続行します。

マテリアライズドビュー ダイアログに入力すると、SQLコマンドが生成されます(以下の例を参照)。レビューには SQL タブを使用します。再アクセスするかタブを切り替えて、SQLコマンドを変更します。

例

以下は、 マテリアライズドビュー ダイアログでのユーザー選択によって生成されたsqlコマンドの例です。

マテリアライズドビューダイアログのSQLタブ

示されている例では、表示されたクエリの結果を pg_default テーブルスペースに保存する new_hires という名前のクエリを作成します。

  • Info ボタン(i)をクリックして、オンラインヘルプにアクセスします。

  • Save ボタンをクリックして作業を保存します。

  • Close ボタンをクリックして、作業を保存せずに終了します。

  • Reset ボタンをクリックして、構成パラメーターを復元します。