本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
ALTER PROCEDURE
重新命名程序或變更擁有者。程序名稱和資料類型 (或簽章) 都是必要的。只有擁有者或超級使用者才能重新命名程序。只有超級使用者才能變更程序的擁有者。
語法
ALTER PROCEDURE sp_name [ ( [ [ argname ] [ argmode ] argtype [, ...] ] ) ] RENAME TO new_name
ALTER PROCEDURE sp_name [ ( [ [ argname ] [ argmode ] argtype [, ...] ] ) ] OWNER TO { new_owner | CURRENT_USER | SESSION_USER }
參數
- sp_name
-
要修改的程序的名稱。在目前的搜尋路徑中僅指定程序的名稱,或使用格式
schema_name.sp_procedure_name
來使用專屬結構描述。 - [argname] [argmode] argtype
-
引數名稱、引數模式和資料類型的清單。只有用於識別預存程序的輸入資料類型是必要的。或者,您可以提供用於建立程序的完整簽章,包括輸入和輸出參數及其模式。
- new_name
-
預存程序的新名稱。
- new_owner | CURRENT_USER | SESSION_USER
-
預存程序的新擁有者。
範例
下列範例會將程序的名稱從 first_quarter_revenue
變更為 quarterly_revenue
。
ALTER PROCEDURE first_quarter_revenue(volume INOUT bigint, at_price IN numeric, result OUT int) RENAME TO quarterly_revenue;
此範例相當於下列命令。
ALTER PROCEDURE first_quarter_revenue(bigint, numeric) RENAME TO quarterly_revenue;
下列範例會將程序的擁有者變更為 etl_user
。
ALTER PROCEDURE quarterly_revenue(bigint, numeric) OWNER TO etl_user;