ALTER FUNCTION
ALTER FUNCTION は、関数の定義を変更します。
サポートされている構文
ALTER FUNCTION name [ ( [ [ argmode ] [ argname ] argtype [, ...] ] ) ] RENAME TO new_name ALTER FUNCTION name [ ( [ [ argmode ] [ argname ] argtype [, ...] ] ) ] OWNER TO { new_owner | CURRENT_ROLE | CURRENT_USER | SESSION_USER } ALTER FUNCTION name [ ( [ [ argmode ] [ argname ] argtype [, ...] ] ) ] SET SCHEMA new_schema
説明
ALTER FUNCTION は、既存の関数の定義を変更します。
ALTER FUNCTION を使用するには、関数を所有している必要があります。関数のスキーマを変更するには、新しいスキーマに対する CREATE 権限も必要です。所有者を変更するには、新しい所有ロールのメンバーである必要があり、そのロールが関数のスキーマに対する CREATE 権限を持っている必要があります。
RENAME TO-
関数の名前を変更します。
OWNER TO-
関数の所有者を、指定されたユーザーに変更します。
SET SCHEMA-
関数を別のスキーマに移動します。
パラメータ
name-
変更する既存の関数の名前 (スキーマ修飾名も可)。
argmode-
引数のモード:
IN、OUT、INOUT、またはVARIADIC。これを省略した場合、デフォルトでINになります。関数は識別に入力引数のみを使用するため、IN引数、INOUT引数、VARIADIC引数のみを一覧表示します。 argname-
引数の名前。
argtype-
関数の引数のデータ型。
new_name-
関数の新しい名前。
new_owner-
関数の新しい所有者。
new_schema-
関数の新しいスキーマ。
考慮事項
上記以外の属性を変更するには、CREATE OR REPLACE FUNCTION を使用します。詳細については、「CREATE FUNCTION」を参照してください。
関数に対するコメントを追加、変更、または削除するには、別の COMMENT ON
FUNCTION コマンドを使用します。
例
関数 add (2 つの integer 引数を取る) の名前を sum_two に変更します。
ALTER FUNCTION add(integer, integer) RENAME TO sum_two;
関数 add の所有者を現在のユーザーに変更します。
ALTER FUNCTION add(integer, integer) OWNER TO CURRENT_USER;
関数 add をスキーマ utils に移動します。
ALTER FUNCTION add(integer, integer) SET SCHEMA utils;
互換性
Aurora DSQL は、PostgreSQL の ALTER FUNCTION ステートメントの RENAME TO フォーム、OWNER TO フォーム、SET SCHEMA フォームをサポートしています。PostgreSQL で利用可能な他のフォームはサポートされていません。