diff options
-rw-r--r-- | doc/src/sgml/plpgsql.sgml | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/doc/src/sgml/plpgsql.sgml b/doc/src/sgml/plpgsql.sgml index dc29e7cd0f6..2f166d2d593 100644 --- a/doc/src/sgml/plpgsql.sgml +++ b/doc/src/sgml/plpgsql.sgml @@ -180,8 +180,26 @@ <title>Structure of <application>PL/pgSQL</application></title> <para> + Functions written in <application>PL/pgSQL</application> are defined + to the server by executing <xref linkend="sql-createfunction"> commands. + Such a command would normally look like, say, +<programlisting> +CREATE FUNCTION somefunc(integer, text) RETURNS integer +AS '<replaceable>function body text</>' +LANGUAGE plpgsql; +</programlisting> + The function body is simply a string literal so far as <command>CREATE + FUNCTION</> is concerned. It is often helpful to use dollar quoting + (see <xref linkend="sql-syntax-dollar-quoting">) to write the function + body, rather than the normal single quote syntax. Without dollar quoting, + any single quotes or backslashes in the function body must be escaped by + doubling them. Almost all the examples in this chapter use dollar-quoted + literals for their function bodies. + </para> + + <para> <application>PL/pgSQL</application> is a block-structured language. - The complete text of a function definition must be a + The complete text of a function body must be a <firstterm>block</>. A block is defined as: <synopsis> |