Language Dialog¶
CREATELANGUAGEダイアログを使用して、新しい手続き型言語を登録します。
言語 ダイアログは、 一般 、 定義 、および セキュリティ のダイアログタブを使用して手続き型言語の登録を整理します。 SQL タブには、ダイアログ選択によって生成されたSQLコードが表示されます。
[ General ]タブのフィールドを使用して、言語を識別します。
名前 の横にあるドロップダウンリストボックスを使用して、言語スクリプトを選択します。
所有者 の横にあるドロップダウンリストボックスを使用して、ロールを選択します。
コメント フィールドに言語に関するメモを保存します。
[ 定義 ]タブをクリックして続行します。
[ Definition ]タブのフィールドを使用して、パラメーターを定義します。
Trusted? スイッチを No の位置に移動して、PostgreSQLスーパーユーザー特権を持つユーザーのみがこの言語を使用できることを指定します。デフォルトは はい です。
有効になっている場合、 HandlerFunction の横にあるドロップダウンリストボックスを使用して、言語の機能を実行するために呼び出される関数を選択します。
有効になっている場合、 インライン関数 の横にあるドロップダウンリストボックスを使用して、この言語で匿名コードブロック(DOコマンド)を実行するために呼び出される関数を選択します。
有効になっている場合、 ValidatorFunction の横にあるドロップダウンリストボックスを使用して、その言語で新しい関数が作成されたときに呼び出される関数を選択し、新しい関数を検証します。
[ セキュリティ ]タブをクリックして続行します。
[ セキュリティ ]タブを使用して、特権を割り当て、セキュリティラベルを定義します。
Privileges パネルを使用して、ロールに特権を割り当てます。 Add アイコン(+)をクリックして、データベースオブジェクトの特権を設定します。
Grantee フィールドのドロップダウンリストボックスからロールの名前を選択します。
Privileges フィールド内をクリックします。1つ以上の権限の左側にあるチェックボックスをオンにして、選択した権限を指定されたユーザーに付与します。
特権を付与するためのデフォルトの付与者である現在のユーザーが、 Grantor フィールドに表示されます。
Add アイコン(+)をクリックして、追加の特権を割り当てます。特権を破棄するには、行の左側にあるゴミ箱アイコンをクリックし、 DeleteRow ポップアップで削除を確認します。
SecurityLabels パネルを使用して、関数に適用されるセキュリティラベルを定義します。 Add アイコン(+)をクリックして、各セキュリティラベルの選択を追加します。
Provider フィールドでセキュリティラベルプロバイダーを指定します。名前付きプロバイダーをロードし、提案されたラベル付け操作に同意する必要があります。
SecurityLabel フィールドにセキュリティラベルを指定します。特定のラベルの意味は、ラベルプロバイダーの裁量にあります。PostgreSQLは、ラベルプロバイダーがセキュリティラベルを解釈する必要があるかどうか、またはどのように解釈するかについて制限を設けていません。それらを格納するメカニズムを提供するだけです。
Add アイコン(+)をクリックして、追加のセキュリティラベルを割り当てます。セキュリティラベルを破棄するには、行の左側にあるゴミ箱アイコンをクリックし、 DeleteRow ポップアップで削除を確認します。
SQL タブをクリックして続行します。
言語 ダイアログに入力すると、SQLコマンドが生成されます(以下の例を参照)。レビューには SQL タブを使用します。再アクセスするかタブを切り替えて、SQLコマンドを変更します。
例¶
以下は、 言語 ダイアログでのユーザー選択によって生成されるsqlコマンドの例です。
示されている例は、 mylan という名前の信頼できる手続き型言語の作成を示しています。
Info ボタン(i)をクリックして、オンラインヘルプにアクセスします。
Save ボタンをクリックして作業を保存します。
Close ボタンをクリックして、作業を保存せずに終了します。
Reset ボタンをクリックして、構成パラメーターを復元します。