ALTER FUNCTION (SQL)
Alters a user-defined SQL function.
Syntax
ALTER FUNCTION [[db-name.]schema.]function‑name( [arg‑list] ) { OWNER TO new‑owner | RENAME TO new‑name | SET SCHEMA new‑schema }
Parameters
[db-name.]schema
|
Database and schema. The default schema is |
function‑name
|
The name of the SQL function to alter. |
arg‑list | A comma-delimited list of function argument names. If none, specify an empty list. |
OWNER TO new‑owner
|
Transfers function ownership to another user. |
RENAME TO new‑name
|
Renames this function. |
SET SCHEMA new‑schema
|
Moves the function to another schema. |
Privileges
Non-superuser: USAGE on the schema and one of the following:
- Function owner
- ALTER privilege on the function
For certain operations, non-superusers must also have the following schema privileges:
For these operations... | Schema privileges required... |
---|---|
RENAME TO (rename function) | CREATE, USAGE |
SET SCHEMA (move function to another schema) |
CREATE: destination schema |
Examples
Rename function SQL_one
to SQL_two
:
=> ALTER FUNCTION SQL_one (int, int) RENAME TO SQL_two;
Move function SQL_two
to schema macros
:
=> ALTER FUNCTION SQL_two (int, int) SET SCHEMA macros;
Reassign ownership of SQL_two
:
=> ALTER FUNCTION SQL_two (int, int) OWNER TO user1;