ALTER ROUTINE — ルーチンの定義を変更する
ALTER ROUTINEname[ ( [ [argmode] [argname]argtype[, ...] ] ) ]action[ ... ] [ RESTRICT ] ALTER ROUTINEname[ ( [ [argmode] [argname]argtype[, ...] ] ) ] RENAME TOnew_nameALTER ROUTINEname[ ( [ [argmode] [argname]argtype[, ...] ] ) ] OWNER TO {new_owner| CURRENT_USER | SESSION_USER } ALTER ROUTINEname[ ( [ [argmode] [argname]argtype[, ...] ] ) ] SET SCHEMAnew_schemaALTER ROUTINEname[ ( [ [argmode] [argname]argtype[, ...] ] ) ] DEPENDS ON EXTENSIONextension_nameここでactionは以下のいずれかです。 IMMUTABLE | STABLE | VOLATILE | [ NOT ] LEAKPROOF [ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY DEFINER PARALLEL { UNSAFE | RESTRICTED | SAFE } COSTexecution_costROWSresult_rowsSETconfiguration_parameter{ TO | = } {value| DEFAULT } SETconfiguration_parameterFROM CURRENT RESETconfiguration_parameterRESET ALL
ALTER ROUTINEはルーチン、すなわち、集約関数や通常の関数、プロシージャの定義を変更します。
パラメータ説明や更なる例、より詳細については、ALTER AGGREGATE、ALTER FUNCTION、ALTER PROCEDUREを参照してください。
integer型に対するルーチンfooをfoobarに名前変更します。
ALTER ROUTINE foo(integer) RENAME TO foobar;
このコマンドはfooが集約、関数、プロシージャの何れであるかによらず動作します。
この文はSQL標準のALTER ROUTINE文と部分的に互換性があります。
より詳しくはALTER FUNCTIONとALTER PROCEDUREを参照してください。
ルーチン名が集約関数を参照できるのはPostgreSQLの拡張です。
CREATE ROUTINEコマンドは無いことに注意してください。