Only use SGML indexterm "zone" when we want to get the entire section.

Some alignment cleanups.
This commit is contained in:
Bruce Momjian 2007-08-31 21:33:48 +00:00
parent 45ebcbcc1f
commit a55eab8921
3 changed files with 175 additions and 164 deletions

View File

@ -1,11 +1,11 @@
<!-- $PostgreSQL: pgsql/doc/src/sgml/extend.sgml,v 1.35 2007/06/06 23:00:35 tgl Exp $ --> <!-- $PostgreSQL: pgsql/doc/src/sgml/extend.sgml,v 1.36 2007/08/31 21:33:48 momjian Exp $ -->
<chapter id="extend"> <chapter id="extend">
<title>Extending <acronym>SQL</acronym></title> <title>Extending <acronym>SQL</acronym></title>
<indexterm zone="extend"> <indexterm zone="extend">
<primary>extending SQL</primary> <primary>extending SQL</primary>
</indexterm> </indexterm>
<para> <para>
In the sections that follow, we will discuss how you In the sections that follow, we will discuss how you

View File

@ -1,4 +1,4 @@
<!-- $PostgreSQL: pgsql/doc/src/sgml/func.sgml,v 1.391 2007/08/31 04:52:29 momjian Exp $ --> <!-- $PostgreSQL: pgsql/doc/src/sgml/func.sgml,v 1.392 2007/08/31 21:33:48 momjian Exp $ -->
<chapter id="functions"> <chapter id="functions">
<title>Functions and Operators</title> <title>Functions and Operators</title>
@ -2986,76 +2986,76 @@ cast(-44 as bit(12)) <lineannotation>111111010100</lineannotation>
<replaceable>string</replaceable> NOT SIMILAR TO <replaceable>pattern</replaceable> <optional>ESCAPE <replaceable>escape-character</replaceable></optional> <replaceable>string</replaceable> NOT SIMILAR TO <replaceable>pattern</replaceable> <optional>ESCAPE <replaceable>escape-character</replaceable></optional>
</synopsis> </synopsis>
<para> <para>
The <function>SIMILAR TO</function> operator returns true or The <function>SIMILAR TO</function> operator returns true or
false depending on whether its pattern matches the given string. false depending on whether its pattern matches the given string.
It is much like <function>LIKE</function>, except that it It is much like <function>LIKE</function>, except that it
interprets the pattern using the SQL standard's definition of a interprets the pattern using the SQL standard's definition of a
regular expression. SQL regular expressions are a curious cross regular expression. SQL regular expressions are a curious cross
between <function>LIKE</function> notation and common regular between <function>LIKE</function> notation and common regular
expression notation. expression notation.
</para> </para>
<para> <para>
Like <function>LIKE</function>, the <function>SIMILAR TO</function> Like <function>LIKE</function>, the <function>SIMILAR TO</function>
operator succeeds only if its pattern matches the entire string; operator succeeds only if its pattern matches the entire string;
this is unlike common regular expression practice, wherein the pattern this is unlike common regular expression practice, wherein the pattern
can match any part of the string. can match any part of the string.
Also like Also like
<function>LIKE</function>, <function>SIMILAR TO</function> uses <function>LIKE</function>, <function>SIMILAR TO</function> uses
<literal>_</> and <literal>%</> as wildcard characters denoting <literal>_</> and <literal>%</> as wildcard characters denoting
any single character and any string, respectively (these are any single character and any string, respectively (these are
comparable to <literal>.</> and <literal>.*</> in POSIX regular comparable to <literal>.</> and <literal>.*</> in POSIX regular
expressions). expressions).
</para> </para>
<para> <para>
In addition to these facilities borrowed from <function>LIKE</function>, In addition to these facilities borrowed from <function>LIKE</function>,
<function>SIMILAR TO</function> supports these pattern-matching <function>SIMILAR TO</function> supports these pattern-matching
metacharacters borrowed from POSIX regular expressions: metacharacters borrowed from POSIX regular expressions:
<itemizedlist> <itemizedlist>
<listitem> <listitem>
<para> <para>
<literal>|</literal> denotes alternation (either of two alternatives). <literal>|</literal> denotes alternation (either of two alternatives).
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
<literal>*</literal> denotes repetition of the previous item zero <literal>*</literal> denotes repetition of the previous item zero
or more times. or more times.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
<literal>+</literal> denotes repetition of the previous item one <literal>+</literal> denotes repetition of the previous item one
or more times. or more times.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
Parentheses <literal>()</literal> can be used to group items into Parentheses <literal>()</literal> can be used to group items into
a single logical item. a single logical item.
</para> </para>
</listitem> </listitem>
<listitem> <listitem>
<para> <para>
A bracket expression <literal>[...]</literal> specifies a character A bracket expression <literal>[...]</literal> specifies a character
class, just as in POSIX regular expressions. class, just as in POSIX regular expressions.
</para> </para>
</listitem> </listitem>
</itemizedlist> </itemizedlist>
Notice that bounded repetition (<literal>?</> and <literal>{...}</>) Notice that bounded repetition (<literal>?</> and <literal>{...}</>)
are not provided, though they exist in POSIX. Also, the dot (<literal>.</>) are not provided, though they exist in POSIX. Also, the dot (<literal>.</>)
is not a metacharacter. is not a metacharacter.
</para> </para>
<para> <para>
As with <function>LIKE</>, a backslash disables the special meaning As with <function>LIKE</>, a backslash disables the special meaning
of any of these metacharacters; or a different escape character can of any of these metacharacters; or a different escape character can
be specified with <literal>ESCAPE</>. be specified with <literal>ESCAPE</>.
</para> </para>
<para> <para>
Some examples: Some examples:
@ -3067,20 +3067,20 @@ cast(-44 as bit(12)) <lineannotation>111111010100</lineannotation>
</programlisting> </programlisting>
</para> </para>
<para> <para>
The <function>substring</> function with three parameters, The <function>substring</> function with three parameters,
<function>substring(<replaceable>string</replaceable> from <function>substring(<replaceable>string</replaceable> from
<replaceable>pattern</replaceable> for <replaceable>pattern</replaceable> for
<replaceable>escape-character</replaceable>)</function>, provides <replaceable>escape-character</replaceable>)</function>, provides
extraction of a substring that matches an SQL extraction of a substring that matches an SQL
regular expression pattern. As with <literal>SIMILAR TO</>, the regular expression pattern. As with <literal>SIMILAR TO</>, the
specified pattern must match to the entire data string, else the specified pattern must match to the entire data string, else the
function fails and returns null. To indicate the part of the function fails and returns null. To indicate the part of the
pattern that should be returned on success, the pattern must contain pattern that should be returned on success, the pattern must contain
two occurrences of the escape character followed by a double quote two occurrences of the escape character followed by a double quote
(<literal>"</>). The text matching the portion of the pattern (<literal>"</>). The text matching the portion of the pattern
between these markers is returned. between these markers is returned.
</para> </para>
<para> <para>
Some examples: Some examples:
@ -11241,17 +11241,17 @@ select current_date + s.a as dates from generate_series(0,14,7) as s(a);
</tgroup> </tgroup>
</table> </table>
<indexterm zone="functions-info"> <indexterm>
<primary>user</primary> <primary>user</primary>
<secondary>current</secondary> <secondary>current</secondary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>schema</primary> <primary>schema</primary>
<secondary>current</secondary> <secondary>current</secondary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>search path</primary> <primary>search path</primary>
<secondary>current</secondary> <secondary>current</secondary>
</indexterm> </indexterm>
@ -11298,19 +11298,19 @@ SET search_path TO <replaceable>schema</> <optional>, <replaceable>schema</>, ..
</para> </para>
</note> </note>
<indexterm zone="functions-info"> <indexterm>
<primary>inet_client_addr</primary> <primary>inet_client_addr</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>inet_client_port</primary> <primary>inet_client_port</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>inet_server_addr</primary> <primary>inet_server_addr</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>inet_server_port</primary> <primary>inet_server_port</primary>
</indexterm> </indexterm>
@ -11325,11 +11325,11 @@ SET search_path TO <replaceable>schema</> <optional>, <replaceable>schema</>, ..
Unix-domain socket. Unix-domain socket.
</para> </para>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_my_temp_schema</primary> <primary>pg_my_temp_schema</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_is_other_temp_schema</primary> <primary>pg_is_other_temp_schema</primary>
</indexterm> </indexterm>
@ -11343,7 +11343,7 @@ SET search_path TO <replaceable>schema</> <optional>, <replaceable>schema</>, ..
tables from a catalog display.) tables from a catalog display.)
</para> </para>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_postmaster_start_time</primary> <primary>pg_postmaster_start_time</primary>
</indexterm> </indexterm>
@ -11353,7 +11353,7 @@ SET search_path TO <replaceable>schema</> <optional>, <replaceable>schema</>, ..
server started. server started.
</para> </para>
<indexterm zone="functions-info"> <indexterm>
<primary>version</primary> <primary>version</primary>
</indexterm> </indexterm>
@ -11491,25 +11491,25 @@ SET search_path TO <replaceable>schema</> <optional>, <replaceable>schema</>, ..
</tgroup> </tgroup>
</table> </table>
<indexterm zone="functions-info"> <indexterm>
<primary>has_database_privilege</primary> <primary>has_database_privilege</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>has_function_privilege</primary> <primary>has_function_privilege</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>has_language_privilege</primary> <primary>has_language_privilege</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>has_schema_privilege</primary> <primary>has_schema_privilege</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>has_table_privilege</primary> <primary>has_table_privilege</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>has_tablespace_privilege</primary> <primary>has_tablespace_privilege</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_has_role</primary> <primary>pg_has_role</primary>
</indexterm> </indexterm>
@ -11669,22 +11669,22 @@ SELECT relname FROM pg_class WHERE pg_table_is_visible(oid);
</tgroup> </tgroup>
</table> </table>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_conversion_is_visible</primary> <primary>pg_conversion_is_visible</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_function_is_visible</primary> <primary>pg_function_is_visible</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_operator_is_visible</primary> <primary>pg_operator_is_visible</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_opclass_is_visible</primary> <primary>pg_opclass_is_visible</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_table_is_visible</primary> <primary>pg_table_is_visible</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_type_is_visible</primary> <primary>pg_type_is_visible</primary>
</indexterm> </indexterm>
@ -11718,43 +11718,43 @@ SELECT pg_type_is_visible('myschema.widget'::regtype);
this way &mdash; if the name can be recognized at all, it must be visible. this way &mdash; if the name can be recognized at all, it must be visible.
</para> </para>
<indexterm zone="functions-info"> <indexterm>
<primary>format_type</primary> <primary>format_type</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_get_viewdef</primary> <primary>pg_get_viewdef</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_get_ruledef</primary> <primary>pg_get_ruledef</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_get_indexdef</primary> <primary>pg_get_indexdef</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_get_triggerdef</primary> <primary>pg_get_triggerdef</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_get_constraintdef</primary> <primary>pg_get_constraintdef</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_get_expr</primary> <primary>pg_get_expr</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_get_userbyid</primary> <primary>pg_get_userbyid</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_get_serial_sequence</primary> <primary>pg_get_serial_sequence</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>pg_tablespace_databases</primary> <primary>pg_tablespace_databases</primary>
</indexterm> </indexterm>
@ -11923,19 +11923,19 @@ SELECT pg_type_is_visible('myschema.widget'::regtype);
<structname>pg_class</> catalogs. <structname>pg_class</> catalogs.
</para> </para>
<indexterm zone="functions-info"> <indexterm>
<primary>col_description</primary> <primary>col_description</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>obj_description</primary> <primary>obj_description</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>shobj_description</primary> <primary>shobj_description</primary>
</indexterm> </indexterm>
<indexterm zone="functions-info"> <indexterm>
<primary>comment</primary> <primary>comment</primary>
<secondary sortas="database objects">about database objects</secondary> <secondary sortas="database objects">about database objects</secondary>
</indexterm> </indexterm>
@ -12043,15 +12043,15 @@ SELECT pg_type_is_visible('myschema.widget'::regtype);
</tgroup> </tgroup>
</table> </table>
<indexterm zone="functions-admin"> <indexterm>
<primary>SET</primary> <primary>SET</primary>
</indexterm> </indexterm>
<indexterm zone="functions-admin"> <indexterm>
<primary>SHOW</primary> <primary>SHOW</primary>
</indexterm> </indexterm>
<indexterm zone="functions-admin"> <indexterm>
<primary>configuration</primary> <primary>configuration</primary>
<secondary sortas="server">of the server</secondary> <secondary sortas="server">of the server</secondary>
<tertiary>functions</tertiary> <tertiary>functions</tertiary>
@ -12091,17 +12091,17 @@ SELECT set_config('log_statement_stats', 'off', false);
</programlisting> </programlisting>
</para> </para>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_cancel_backend</primary> <primary>pg_cancel_backend</primary>
</indexterm> </indexterm>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_reload_conf</primary> <primary>pg_reload_conf</primary>
</indexterm> </indexterm>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_rotate_logfile</primary> <primary>pg_rotate_logfile</primary>
</indexterm> </indexterm>
<indexterm zone="functions-admin"> <indexterm>
<primary>signal</primary> <primary>signal</primary>
<secondary sortas="backend">backend processes</secondary> <secondary sortas="backend">backend processes</secondary>
</indexterm> </indexterm>
@ -12175,28 +12175,28 @@ SELECT set_config('log_statement_stats', 'off', false);
subprocess. subprocess.
</para> </para>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_start_backup</primary> <primary>pg_start_backup</primary>
</indexterm> </indexterm>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_stop_backup</primary> <primary>pg_stop_backup</primary>
</indexterm> </indexterm>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_switch_xlog</primary> <primary>pg_switch_xlog</primary>
</indexterm> </indexterm>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_current_xlog_location</primary> <primary>pg_current_xlog_location</primary>
</indexterm> </indexterm>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_current_xlog_insert_location</primary> <primary>pg_current_xlog_insert_location</primary>
</indexterm> </indexterm>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_xlogfile_name_offset</primary> <primary>pg_xlogfile_name_offset</primary>
</indexterm> </indexterm>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_xlogfile_name</primary> <primary>pg_xlogfile_name</primary>
</indexterm> </indexterm>
<indexterm zone="functions-admin"> <indexterm>
<primary>backup</primary> <primary>backup</primary>
</indexterm> </indexterm>
@ -12350,22 +12350,22 @@ postgres=# select * from pg_xlogfile_name_offset(pg_stop_backup());
the actual disk space usage of database objects. the actual disk space usage of database objects.
</para> </para>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_column_size</primary> <primary>pg_column_size</primary>
</indexterm> </indexterm>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_database_size</primary> <primary>pg_database_size</primary>
</indexterm> </indexterm>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_relation_size</primary> <primary>pg_relation_size</primary>
</indexterm> </indexterm>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_size_pretty</primary> <primary>pg_size_pretty</primary>
</indexterm> </indexterm>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_tablespace_size</primary> <primary>pg_tablespace_size</primary>
</indexterm> </indexterm>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_total_relation_size</primary> <primary>pg_total_relation_size</primary>
</indexterm> </indexterm>
@ -12532,7 +12532,7 @@ postgres=# select * from pg_xlogfile_name_offset(pg_stop_backup());
</tgroup> </tgroup>
</table> </table>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_ls_dir</primary> <primary>pg_ls_dir</primary>
</indexterm> </indexterm>
<para> <para>
@ -12541,7 +12541,7 @@ postgres=# select * from pg_xlogfile_name_offset(pg_stop_backup());
<quote><literal>..</></>. <quote><literal>..</></>.
</para> </para>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_read_file</primary> <primary>pg_read_file</primary>
</indexterm> </indexterm>
<para> <para>
@ -12551,7 +12551,7 @@ postgres=# select * from pg_xlogfile_name_offset(pg_stop_backup());
is negative, it is relative to the end of the file. is negative, it is relative to the end of the file.
</para> </para>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_stat_file</primary> <primary>pg_stat_file</primary>
</indexterm> </indexterm>
<para> <para>
@ -12683,7 +12683,7 @@ SELECT (pg_stat_file('filename')).modification;
</tgroup> </tgroup>
</table> </table>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_advisory_lock</primary> <primary>pg_advisory_lock</primary>
</indexterm> </indexterm>
<para> <para>
@ -12697,7 +12697,7 @@ SELECT (pg_stat_file('filename')).modification;
released for other sessions' use. released for other sessions' use.
</para> </para>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_advisory_lock_shared</primary> <primary>pg_advisory_lock_shared</primary>
</indexterm> </indexterm>
<para> <para>
@ -12707,7 +12707,7 @@ SELECT (pg_stat_file('filename')).modification;
Only would-be exclusive lockers are locked out. Only would-be exclusive lockers are locked out.
</para> </para>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_try_advisory_lock</primary> <primary>pg_try_advisory_lock</primary>
</indexterm> </indexterm>
<para> <para>
@ -12718,7 +12718,7 @@ SELECT (pg_stat_file('filename')).modification;
acquired now. acquired now.
</para> </para>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_try_advisory_lock_shared</primary> <primary>pg_try_advisory_lock_shared</primary>
</indexterm> </indexterm>
<para> <para>
@ -12727,7 +12727,7 @@ SELECT (pg_stat_file('filename')).modification;
shared rather than exclusive lock. shared rather than exclusive lock.
</para> </para>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_advisory_unlock</primary> <primary>pg_advisory_unlock</primary>
</indexterm> </indexterm>
<para> <para>
@ -12738,7 +12738,7 @@ SELECT (pg_stat_file('filename')).modification;
and in addition, an SQL warning will be raised by the server. and in addition, an SQL warning will be raised by the server.
</para> </para>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_advisory_unlock_shared</primary> <primary>pg_advisory_unlock_shared</primary>
</indexterm> </indexterm>
<para> <para>
@ -12747,7 +12747,7 @@ SELECT (pg_stat_file('filename')).modification;
except to release a shared advisory lock. except to release a shared advisory lock.
</para> </para>
<indexterm zone="functions-admin"> <indexterm>
<primary>pg_advisory_unlock_all</primary> <primary>pg_advisory_unlock_all</primary>
</indexterm> </indexterm>
<para> <para>

View File

@ -1,4 +1,4 @@
<!-- $PostgreSQL: pgsql/doc/src/sgml/libpq.sgml,v 1.239 2007/07/23 10:16:53 mha Exp $ --> <!-- $PostgreSQL: pgsql/doc/src/sgml/libpq.sgml,v 1.240 2007/08/31 21:33:48 momjian Exp $ -->
<chapter id="libpq"> <chapter id="libpq">
<title><application>libpq</application> - C Library</title> <title><application>libpq</application> - C Library</title>
@ -2399,12 +2399,16 @@ It is not thread-safe.
<sect2 id="libpq-exec-escape-string"> <sect2 id="libpq-exec-escape-string">
<title>Escaping Strings for Inclusion in SQL Commands</title> <title>Escaping Strings for Inclusion in SQL Commands</title>
<indexterm zone="libpq-exec-escape-string"><primary>PQescapeStringConn</></>
<indexterm zone="libpq-exec-escape-string"><primary>PQescapeString</></>
<indexterm zone="libpq-exec-escape-string"> <indexterm zone="libpq-exec-escape-string">
<primary>escaping strings</> <primary>PQescapeStringConn</primary>
<secondary>in libpq</secondary> </indexterm>
</> <indexterm zone="libpq-exec-escape-string">
<primary>PQescapeString</primary>
</indexterm>
<indexterm zone="libpq-exec-escape-string">
<primary>escaping strings</primary>
<secondary>in libpq</secondary>
</indexterm>
<para> <para>
<function>PQescapeStringConn</function> escapes a string for use within an SQL <function>PQescapeStringConn</function> escapes a string for use within an SQL
@ -2499,8 +2503,8 @@ in favor of <function>PQescapeStringConn</>.
<title>Escaping Binary Strings for Inclusion in SQL Commands</title> <title>Escaping Binary Strings for Inclusion in SQL Commands</title>
<indexterm zone="libpq-exec-escape-bytea"> <indexterm zone="libpq-exec-escape-bytea">
<primary>bytea</> <primary>bytea</primary>
<secondary sortas="libpq">in libpq</> <secondary sortas="libpq">in libpq</secondary>
</indexterm> </indexterm>
<variablelist> <variablelist>
@ -2666,7 +2670,9 @@ void PQfreemem(void *ptr);
<sect1 id="libpq-async"> <sect1 id="libpq-async">
<title>Asynchronous Command Processing</title> <title>Asynchronous Command Processing</title>
<indexterm zone="libpq-async"><primary>nonblocking connection</></> <indexterm zone="libpq-async">
<primary>nonblocking connection</primary>
</indexterm>
<para> <para>
The <function>PQexec</function> function is adequate for submitting commands in The <function>PQexec</function> function is adequate for submitting commands in
@ -3075,7 +3081,10 @@ and then read the response as described above.
<sect1 id="libpq-cancel"> <sect1 id="libpq-cancel">
<title>Cancelling Queries in Progress</title> <title>Cancelling Queries in Progress</title>
<indexterm zone="libpq-cancel"><primary>canceling</><secondary>SQL command</></> <indexterm zone="libpq-cancel">
<primary>canceling</primary>
<secondary>SQL command</secondary>
</indexterm>
<para> <para>
A client application can request cancellation of A client application can request cancellation of
@ -3194,7 +3203,9 @@ in progress on the connection.
<sect1 id="libpq-fastpath"> <sect1 id="libpq-fastpath">
<title>The Fast-Path Interface</title> <title>The Fast-Path Interface</title>
<indexterm zone="libpq-fastpath"><primary>fast path</></> <indexterm zone="libpq-fastpath">
<primary>fast path</primary>
</indexterm>
<para> <para>
<productname>PostgreSQL</productname> provides a fast-path interface to send <productname>PostgreSQL</productname> provides a fast-path interface to send