/
githubmirror
/
postgres
Обзор
Документация
Войти
/
githubmirror
/
postgres
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
doc/src/sgml/ref/alter_routine.sgml
103 строки
4 KB
Tom Lane
Doc: fix confusion about LEAKPROOF in syntax summaries.
23 июн 2021, 21:27
23 июн 2021, 21:27
2031e16
Код
Авторство
О чём код?
<!-- doc/src/sgml/ref/alter_routine.sgml PostgreSQL documentation --> <refentry id="sql-alterroutine"> <indexterm zone="sql-alterroutine"> <primary>ALTER ROUTINE</primary> </indexterm> <refmeta> <refentrytitle>ALTER ROUTINE</refentrytitle> <manvolnum>7</manvolnum> <refmiscinfo>SQL - Language Statements</refmiscinfo> </refmeta> <refnamediv> <refname>ALTER ROUTINE</refname> <refpurpose>change the definition of a routine</refpurpose> </refnamediv> <refsynopsisdiv> <synopsis> ALTER ROUTINE <replaceable>name</replaceable> [ ( [ [ <replaceable class="parameter">argmode</replaceable> ] [ <replaceable class="parameter">argname</replaceable> ] <replaceable class="parameter">argtype</replaceable> [, ...] ] ) ] <replaceable class="parameter">action</replaceable> [ ... ] [ RESTRICT ] ALTER ROUTINE <replaceable>name</replaceable> [ ( [ [ <replaceable class="parameter">argmode</replaceable> ] [ <replaceable class="parameter">argname</replaceable> ] <replaceable class="parameter">argtype</replaceable> [, ...] ] ) ] RENAME TO <replaceable>new_name</replaceable> ALTER ROUTINE <replaceable>name</replaceable> [ ( [ [ <replaceable class="parameter">argmode</replaceable> ] [ <replaceable class="parameter">argname</replaceable> ] <replaceable class="parameter">argtype</replaceable> [, ...] ] ) ] OWNER TO { <replaceable>new_owner</replaceable> | CURRENT_ROLE | CURRENT_USER | SESSION_USER } ALTER ROUTINE <replaceable>name</replaceable> [ ( [ [ <replaceable class="parameter">argmode</replaceable> ] [ <replaceable class="parameter">argname</replaceable> ] <replaceable class="parameter">argtype</replaceable> [, ...] ] ) ] SET SCHEMA <replaceable>new_schema</replaceable> ALTER ROUTINE <replaceable>name</replaceable> [ ( [ [ <replaceable class="parameter">argmode</replaceable> ] [ <replaceable class="parameter">argname</replaceable> ] <replaceable class="parameter">argtype</replaceable> [, ...] ] ) ] [ NO ] DEPENDS ON EXTENSION <replaceable>extension_name</replaceable> <phrase>where <replaceable class="parameter">action</replaceable> is one of:</phrase> IMMUTABLE | STABLE | VOLATILE [ NOT ] LEAKPROOF [ EXTERNAL ] SECURITY INVOKER | [ EXTERNAL ] SECURITY DEFINER PARALLEL { UNSAFE | RESTRICTED | SAFE } COST <replaceable class="parameter">execution_cost</replaceable> ROWS <replaceable class="parameter">result_rows</replaceable> SET <replaceable class="parameter">configuration_parameter</replaceable> { TO | = } { <replaceable class="parameter">value</replaceable> | DEFAULT } SET <replaceable class="parameter">configuration_parameter</replaceable> FROM CURRENT RESET <replaceable class="parameter">configuration_parameter</replaceable> RESET ALL </synopsis> </refsynopsisdiv> <refsect1> <title>Description</title> <para> <command>ALTER ROUTINE</command> changes the definition of a routine, which can be an aggregate function, a normal function, or a procedure. See under <xref linkend="sql-alteraggregate"/>, <xref linkend="sql-alterfunction"/>, and <xref linkend="sql-alterprocedure"/> for the description of the parameters, more examples, and further details. </para> </refsect1> <refsect1> <title>Examples</title> <para> To rename the routine <literal>foo</literal> for type <type>integer</type> to <literal>foobar</literal>: <programlisting> ALTER ROUTINE foo(integer) RENAME TO foobar; </programlisting> This command will work independent of whether <literal>foo</literal> is an aggregate, function, or procedure. </para> </refsect1> <refsect1> <title>Compatibility</title> <para> This statement is partially compatible with the <command>ALTER ROUTINE</command> statement in the SQL standard. See under <xref linkend="sql-alterfunction"/> and <xref linkend="sql-alterprocedure"/> for more details. Allowing routine names to refer to aggregate functions is a <productname>PostgreSQL</productname> extension. </para> </refsect1> <refsect1> <title>See Also</title> <simplelist type="inline"> <member><xref linkend="sql-alteraggregate"/></member> <member><xref linkend="sql-alterfunction"/></member> <member><xref linkend="sql-alterprocedure"/></member> <member><xref linkend="sql-droproutine"/></member> </simplelist> <para> Note that there is no <literal>CREATE ROUTINE</literal> command. </para> </refsect1> </refentry>