Foreign Table Dialog¶
ForeignTable ダイアログを使用して、現在のデータベースに外部テーブルを定義します。外部テーブルは、外部サーバーにある外部データソースの構造を定義します。
外部テーブル ダイアログは、次のダイアログタブを介して外部テーブルの開発を整理します。 一般 、 定義 、 列 、 制約 、 オプション 、および セキュリティ 。 SQL タブには、ダイアログ選択によって生成されたSQLコードが表示されます。
General タブのフィールドを使用して、外部テーブルを識別します。
Name フィールドを使用して、外部テーブルの説明的な名前を追加します。外部テーブルの名前は、同じスキーマ内の他の外部テーブル、テーブル、シーケンス、インデックス、ビュー、既存のデータ型またはマテリアライズドビューの名前とは異なる必要があります。名前は pgAdmin ツリーコントロールに表示されます。
Owner の横にあるドロップダウンリストボックスを使用して、外部テーブルを所有するロールの名前を選択します。
Schema フィールドのドロップダウンリストボックスから、外部テーブルが存在するスキーマの名前を選択します。
コメント フィールドに外部テーブルに関するメモを保存します。
[ 定義 ]タブをクリックして続行します。
[ Definition ]タブのフィールドを使用して、外部データソースを定義します。
外部サーバー の横にあるドロップダウンリストボックスを使用して、外部サーバーを選択します。このリストには、 ForeignServer ダイアログで定義されたサーバーが入力されています。
Inherits の横にあるドロップダウンリストボックスを使用して、親テーブルを指定します。外部テーブルは、そのすべての列を継承します。このフィールドはオプションです。
[ 列 ]タブをクリックして続行します。
Columns タブのフィールドを使用して、列とその属性をテーブルに追加します。 Add アイコン(+)をクリックして、列を定義します。
Name フィールドを使用して、列に説明的な名前を追加します。
DataType フィールドのドロップダウンリストボックスを使用して、列のデータ型を選択します。これには、配列指定子を含めることができます。PostgreSQLでサポートされているデータ型の詳細については、コアドキュメントの第8章を参照してください。
Add アイコン(+)をクリックして、追加の各列を指定します。列を破棄するには、行の左側にあるゴミ箱アイコンをクリックし、 DeleteRow ポップアップで削除を確認します。
[ Constraints ]タブをクリックして続行します。
Constraints タブのフィールドを使用して、外部テーブルにテーブル制約を適用します。 Add アイコン(+)をクリックして、制約を定義します。
Name フィールドを使用して、制約の説明的な名前を追加します。制約に違反している場合、制約名がエラーメッセージに表示されるため、 colは正でなければならない のような制約名を使用して、役立つ情報を伝えることができます。
Check フィールドを使用して、ブール結果を生成するチェック式を記述します。外部テーブルの各行は、チェック式を満たす必要があります。
NoInherit チェックボックスをオンにして、制約が子テーブルに伝播しないことを指定します。
Validate チェックボックスのチェックを外し、検証を無効にします。データベースは、テーブル内のすべての行に制約が適用されるとは想定しません。
Add アイコン(+)をクリックして、追加の各制約を指定します。制約を破棄するには、行の左側にあるゴミ箱アイコンをクリックし、 DeleteRow ポップアップで削除を確認します。
[ オプション ]タブをクリックして続行します。
Options タブのフィールドを使用して、新しい外部テーブルまたはその列の1つに関連付けるオプションを指定します。受け入れられるオプションの名前と値は、外部サーバーに関連付けられた外部データラッパーに固有です。 Add アイコン(+)をクリックして、オプション/値のペアを追加します。
Option フィールドにオプション名を指定します。重複するオプション名は許可されていません。
Value フィールドに対応する値を入力します。
Add アイコン(+)をクリックして、追加のオプション/値のペアをそれぞれ指定します。オプションを破棄するには、行の左側にあるゴミ箱アイコンをクリックし、 DeleteRow ポップアップで削除を確認します。
[ セキュリティ ]タブをクリックして続行します。
[ セキュリティ ]タブを使用して、特権を割り当て、セキュリティラベルを定義します。
Privileges パネルを使用して、ロールに特権を割り当てます。 Add アイコン(+)をクリックして、データベースオブジェクトの特権を設定します。
Grantee フィールドのドロップダウンリストボックスから、特権が割り当てられるロールの名前を選択します。
Privileges フィールド内をクリックします。1つ以上の権限の左側にあるチェックボックスをオンにして、選択した権限を指定されたユーザーに付与します。
特権を付与するためのデフォルトの付与者である現在のユーザーが、 Grantor フィールドに表示されます。
Add アイコン(+)をクリックして、追加の特権を割り当てます。特権を破棄するには、行の左側にあるゴミ箱アイコンをクリックし、 DeleteRow ポップアップで削除を確認します。
SecurityLabels パネルを使用して、関数に適用されるセキュリティラベルを定義します。 Add アイコン(+)をクリックして、各セキュリティラベルの選択を追加します。
Provider フィールドでセキュリティラベルプロバイダーを指定します。名前付きプロバイダーをロードし、提案されたラベル付け操作に同意する必要があります。
SecurityLabel フィールドにセキュリティラベルを指定します。特定のラベルの意味は、ラベルプロバイダーの裁量にあります。PostgreSQLは、ラベルプロバイダーがセキュリティラベルを解釈する必要があるかどうか、またはどのように解釈するかについて制限を設けていません。それらを格納するメカニズムを提供するだけです。
Add アイコン(+)をクリックして、追加のセキュリティラベルを割り当てます。セキュリティラベルを破棄するには、行の左側にあるゴミ箱アイコンをクリックし、 DeleteRow ポップアップで削除を確認します。
SQL タブをクリックして続行します。
外部テーブル ダイアログに入力すると、SQLコマンドが生成されます(以下の例を参照)。レビューには SQL タブを使用します。再アクセスするかタブを切り替えて、SQLコマンドを変更します。
例¶
以下は、 外部テーブル ダイアログでのユーザー選択によって生成されたsqlコマンドの例です。
示されている例は、複数の列を持つ外部テーブル weblogs の作成を示しています。
Info ボタン(i)をクリックして、オンラインヘルプにアクセスします。
Save ボタンをクリックして作業を保存します。
Close ボタンをクリックして、作業を保存せずに終了します。
Reset ボタンをクリックして、構成パラメーターを復元します。