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_ROLE | CURRENT_USER | SESSION_USER } ALTER ROUTINEname[ ( [ [argmode] [argname]argtype[, ...] ] ) ] SET SCHEMAnew_schemaALTER ROUTINEname[ ( [ [argmode] [argname]argtype[, ...] ] ) ] [ NO ] DEPENDS ON EXTENSIONextension_namewhereactionis one of: 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 的擴充套件。
如果您在文件中發現任何不正確、與您使用特定功能時的體驗不符或需要進一步澄清的內容,請使用 此表單 報告文件問題。