ALTER PROCEDURE
Renomeia um procedimento ou altera o proprietário. São necessários o nome do procedimento e os tipos de dados, ou a assinatura. Somente o proprietário ou um usuário avançado pode renomear um procedimento. Somente um usuário avançado pode alterar o proprietário de um procedimento.
Sintaxe
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 }
Parâmetros
- sp_name
-
O nome do procedimento a ser alterado. Especifique apenas o nome do procedimento no caminho de pesquisa atual ou use o formato
schema_name.sp_procedure_name
para adotar um esquema específico. - [argname] [ argmode] argtype
-
Uma lista de nomes de argumentos, modos de argumentos e tipos de dados. Somente os tipos de dados de entrada são obrigatórios, usados para identificar o procedimento armazenado. Como alternativa, você pode fornecer a assinatura completa usada para criar o procedimento, incluindo os parâmetros de entrada e saída com seus modos.
- new_name
-
Um novo nome para o procedimento armazenado.
- new_owner | CURRENT_USER | SESSION_USER
-
Um novo proprietário para o procedimento armazenado.
Exemplos
O exemplo a seguir altera o nome de um procedimento de first_quarter_revenue
para quarterly_revenue
.
ALTER PROCEDURE first_quarter_revenue(volume INOUT bigint, at_price IN numeric, result OUT int) RENAME TO quarterly_revenue;
Este exemplo é equivalente ao seguinte:
ALTER PROCEDURE first_quarter_revenue(bigint, numeric) RENAME TO quarterly_revenue;
O seguinte exemplo altera o proprietário de um procedimento para etl_user
.
ALTER PROCEDURE quarterly_revenue(bigint, numeric) OWNER TO etl_user;