Closed nene closed 3 months ago
OR REPLACE
IN | OUT | INOUT | VARIADIC
argname
DEFAULT expr
= expr
RETURNS type
RETURNS TABLE ( column_name column_type [, ...] )
LANGUAGE lang
TRANSFORM { FOR TYPE type_name } [, ... ]
WINDOW
{ IMMUTABLE | STABLE | VOLATILE }
[ NOT ] LEAKPROOF
{ CALLED ON NULL INPUT | RETURNS NULL ON NULL INPUT | STRICT }
{ [ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY DEFINER }
PARALLEL { UNSAFE | RESTRICTED | SAFE }
COST execution_cost
ROWS result_rows
SUPPORT support_function
SET configuration_parameter { TO value | = value | FROM CURRENT }
AS 'definition'
AS 'obj_file', 'link_symbol'
sql_body
LANGUAGE SQL
RETURN expr
BEGIN ATOMIC ... END
CREATE FUNCTION
IF EXISTS
CASCADE | RESTRICT
action ... [RESTRICT]
CALLED ON NULL INPUT | RETURNS NULL ON NULL INPUT | STRICT
IMMUTABLE | STABLE | VOLATILE
[ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY DEFINER
SET configuration_parameter { TO | = } { value | DEFAULT }
SET configuration_parameter FROM CURRENT
RESET configuration_parameter
RESET ALL
RENAME TO new_name
OWNER TO { new_owner | CURRENT_ROLE | CURRENT_USER | SESSION_USER }
SET SCHEMA new_schema
[ NO ] DEPENDS ON EXTENSION extension_name
OR REPLACE
IN | OUT | INOUT | VARIADIC
argname
DEFAULT expr
,= expr
RETURNS type
RETURNS TABLE ( column_name column_type [, ...] )
LANGUAGE lang
TRANSFORM { FOR TYPE type_name } [, ... ]
WINDOW
{ IMMUTABLE | STABLE | VOLATILE }
[ NOT ] LEAKPROOF
{ CALLED ON NULL INPUT | RETURNS NULL ON NULL INPUT | STRICT }
{ [ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY DEFINER }
PARALLEL { UNSAFE | RESTRICTED | SAFE }
COST execution_cost
ROWS result_rows
SUPPORT support_function
SET configuration_parameter { TO value | = value | FROM CURRENT }
AS 'definition'
AS 'obj_file', 'link_symbol'
sql_body
(whenLANGUAGE SQL
):RETURN expr
BEGIN ATOMIC ... END
OR REPLACE
CREATE FUNCTION
LANGUAGE lang
TRANSFORM { FOR TYPE type_name } [, ... ]
{ [ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY DEFINER }
SET configuration_parameter { TO value | = value | FROM CURRENT }
AS 'definition'
AS 'obj_file', 'link_symbol'
sql_body
:BEGIN ATOMIC ... END
IF EXISTS
CASCADE | RESTRICT
IF EXISTS
CASCADE | RESTRICT
action ... [RESTRICT]
CALLED ON NULL INPUT | RETURNS NULL ON NULL INPUT | STRICT
IMMUTABLE | STABLE | VOLATILE
[ NOT ] LEAKPROOF
[ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY DEFINER
PARALLEL { UNSAFE | RESTRICTED | SAFE }
COST execution_cost
ROWS result_rows
SUPPORT support_function
SET configuration_parameter { TO | = } { value | DEFAULT }
SET configuration_parameter FROM CURRENT
RESET configuration_parameter
RESET ALL
RENAME TO new_name
OWNER TO { new_owner | CURRENT_ROLE | CURRENT_USER | SESSION_USER }
SET SCHEMA new_schema
[ NO ] DEPENDS ON EXTENSION extension_name
action ... [RESTRICT]
[ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY DEFINER
SET configuration_parameter { TO | = } { value | DEFAULT }
SET configuration_parameter FROM CURRENT
RESET configuration_parameter
RESET ALL
RENAME TO new_name
OWNER TO { new_owner | CURRENT_ROLE | CURRENT_USER | SESSION_USER }
SET SCHEMA new_schema
[ NO ] DEPENDS ON EXTENSION extension_name