Home Explore Blog CI



postgresql

3rd chunk of `doc/src/sgml/ref/alter_function.sgml`
c1501ec5e0a14825933849cd8075a2d03569eb21a7e8758c0000000100000fa0
 class="parameter">new_schema</replaceable></term>
    <listitem>
     <para>
      The new schema for the function.
     </para>
    </listitem>
   </varlistentry>

   <varlistentry>
    <term><literal>DEPENDS ON EXTENSION <replaceable class="parameter">extension_name</replaceable></literal></term>
    <term><literal>NO DEPENDS ON EXTENSION <replaceable class="parameter">extension_name</replaceable></literal></term>
    <listitem>
     <para>
      This form marks the function as dependent on the extension, or no longer
      dependent on that extension if <literal>NO</literal> is specified.
      A function that's marked as dependent on an extension is dropped when the
      extension is dropped, even if <literal>CASCADE</literal> is not specified.
      A function can depend upon multiple extensions, and will be dropped when
      any one of those extensions is dropped.
     </para>
    </listitem>
   </varlistentry>

    <varlistentry>
     <term><literal>CALLED ON NULL INPUT</literal></term>
     <term><literal>RETURNS NULL ON NULL INPUT</literal></term>
     <term><literal>STRICT</literal></term>

     <listitem>
      <para><literal>CALLED ON NULL INPUT</literal> changes the function so
       that it will be invoked when some or all of its arguments are
       null. <literal>RETURNS NULL ON NULL INPUT</literal> or
       <literal>STRICT</literal> changes the function so that it is not
       invoked if any of its arguments are null; instead, a null result
       is assumed automatically.  See <xref linkend="sql-createfunction"/>
       for more information.
      </para>
     </listitem>
   </varlistentry>

    <varlistentry>
     <term><literal>IMMUTABLE</literal></term>
     <term><literal>STABLE</literal></term>
     <term><literal>VOLATILE</literal></term>

     <listitem>
      <para>
       Change the volatility of the function to the specified setting.
       See <xref linkend="sql-createfunction"/> for details.
      </para>
    </listitem>
   </varlistentry>

   <varlistentry>
    <term><literal><optional> EXTERNAL </optional> SECURITY INVOKER</literal></term>
    <term><literal><optional> EXTERNAL </optional> SECURITY DEFINER</literal></term>

    <listitem>
     <para>
      Change whether the function is a security definer or not. The
      key word <literal>EXTERNAL</literal> is ignored for SQL
      conformance. See <xref linkend="sql-createfunction"/> for more information about
      this capability.
     </para>
    </listitem>
   </varlistentry>

   <varlistentry>
    <term><literal>PARALLEL</literal></term>

    <listitem>
     <para>
      Change whether the function is deemed safe for parallelism.
      See <xref linkend="sql-createfunction"/> for details.
     </para>
    </listitem>
   </varlistentry>

   <varlistentry>
    <term><literal>LEAKPROOF</literal></term>
    <listitem>
     <para>
      Change whether the function is considered leakproof or not.
      See <xref linkend="sql-createfunction"/> for more information about
      this capability.
     </para>
    </listitem>
   </varlistentry>

    <varlistentry>
     <term><literal>COST</literal> <replaceable class="parameter">execution_cost</replaceable></term>

     <listitem>
      <para>
       Change the estimated execution cost of the function.
       See <xref linkend="sql-createfunction"/> for more information.
      </para>
     </listitem>
   </varlistentry>

    <varlistentry>
     <term><literal>ROWS</literal> <replaceable class="parameter">result_rows</replaceable></term>

     <listitem>
      <para>
       Change the estimated number of rows returned by a set-returning
       function.  See <xref linkend="sql-createfunction"/> for more information.
      </para>
     </listitem>
   </varlistentry>

   <varlistentry>
    <term><literal>SUPPORT</literal> <replaceable class="parameter">support_function</replaceable></term>

    <listitem>
     <para>
      Set or change the planner support function to use for this function.
     

Title: ALTER FUNCTION - More Parameters
Summary
This section continues the description of parameters for the `ALTER FUNCTION` command. It covers how the function handles NULL inputs (`CALLED ON NULL INPUT`, `RETURNS NULL ON NULL INPUT`, `STRICT`), its volatility (`IMMUTABLE`, `STABLE`, `VOLATILE`), security context (`SECURITY INVOKER`, `SECURITY DEFINER`), parallelism (`PARALLEL`), leakproof status (`LEAKPROOF`), execution cost (`COST`), estimated number of rows returned (`ROWS`), and the planner support function (`SUPPORT`).