<term><acronym>GIN</acronym></term>
<listitem>
<para>
- <link linkend="GIN">Generalized Inverted Index</link>
+ <link linkend="gin">Generalized Inverted Index</link>
</para>
</listitem>
</varlistentry>
<term><acronym>GiST</acronym></term>
<listitem>
<para>
- <link linkend="GiST">Generalized Search Tree</link>
+ <link linkend="gist">Generalized Search Tree</link>
</para>
</listitem>
</varlistentry>
<term><acronym>SP-GiST</acronym></term>
<listitem>
<para>
- <link linkend="SPGiST">Space-Partitioned Generalized Search Tree</link>
+ <link linkend="spgist">Space-Partitioned Generalized Search Tree</link>
</para>
</listitem>
</varlistentry>
<title>Author</title>
<para>
This chapter originated as part of
- <xref linkend="SIM98">, Stefan Simkovics'
+ <xref linkend="sim98">, Stefan Simkovics'
Master's Thesis prepared at Vienna University of Technology under the direction
of O.Univ.Prof.Dr. Georg Gottlob and Univ.Ass. Mag. Katrin Seyr.
</para>
<bibliodiv>
<title><acronym>SQL</acronym> Reference Books</title>
- <biblioentry id="BOWMAN01">
+ <biblioentry id="bowman01">
<title>The Practical <acronym>SQL</acronym> Handbook</title>
<subtitle>Using SQL Variants</subtitle>
<edition>Fourth Edition</edition>
<pubdate>2001</pubdate>
</biblioentry>
- <biblioentry id="DATE97">
+ <biblioentry id="date97">
<title>A Guide to the <acronym>SQL</acronym> Standard</title>
<subtitle>A user's guide to the standard database language <acronym>SQL</acronym></subtitle>
<edition>Fourth Edition</edition>
<pubdate>1997</pubdate>
</biblioentry>
- <biblioentry id="DATE04">
+ <biblioentry id="date04">
<title>An Introduction to Database Systems</title>
<edition>Eighth Edition</edition>
<authorgroup>
<pubdate>2003</pubdate>
</biblioentry>
- <biblioentry id="ELMA04">
+ <biblioentry id="elma04">
<title>Fundamentals of Database Systems</title>
<edition>Fourth Edition</edition>
<authorgroup>
<pubdate>2003</pubdate>
</biblioentry>
- <biblioentry id="MELT93">
+ <biblioentry id="melt93">
<title>Understanding the New <acronym>SQL</acronym></title>
<subtitle>A complete guide</subtitle>
<authorgroup>
<pubdate>1993</pubdate>
</biblioentry>
- <biblioentry id="ULL88">
+ <biblioentry id="ull88">
<title>Principles of Database and Knowledge</title>
<subtitle>Base Systems</subtitle>
<authorgroup>
<bibliodiv>
<title>PostgreSQL-specific Documentation</title>
- <biblioentry id="SIM98">
+ <biblioentry id="sim98">
<title>Enhancement of the ANSI SQL Implementation of PostgreSQL</title>
<authorgroup>
<author>
<pubdate>November 29, 1998</pubdate>
</biblioentry>
- <biblioentry id="YU95">
+ <biblioentry id="yu95">
<title>The <productname>Postgres95</productname> User Manual</title>
<authorgroup>
<author>
<pubdate>Sept. 5, 1995</pubdate>
</biblioentry>
- <biblioentry id="FONG">
+ <biblioentry id="fong">
<title><ulink url="http://db.cs.berkeley.edu/papers/UCB-MS-zfong.pdf">The
design and implementation of the <productname>POSTGRES</productname> query
optimizer</ulink></title>
<bibliodiv>
<title>Proceedings and Articles</title>
- <biblioentry id="OLSON93">
+ <biblioentry id="olson93">
<title>Partial indexing in POSTGRES: research project</title>
<authorgroup>
<author>
<pubdate>1993</pubdate>
</biblioentry>
- <biblioentry id="ONG90">
+ <biblioentry id="ong90">
<biblioset relation="article">
<title>A Unified Framework for Version Modeling Using Production Rules in a Database System</title>
<authorgroup>
</biblioset>
</biblioentry>
- <biblioentry id="ROWE87">
+ <biblioentry id="rowe87">
<biblioset relation="article">
<title><ulink url="http://db.cs.berkeley.edu/papers/ERL-M87-13.pdf">The <productname>POSTGRES</productname>
data model</ulink></title>
</confgroup>
</biblioentry>
- <biblioentry id="SESHADRI95">
+ <biblioentry id="seshadri95">
<biblioset relation="article">
<title><ulink url="http://citeseer.ist.psu.edu/seshadri95generalized.html">Generalized
Partial Indexes</ulink></title>
<pagenums>420-7</pagenums>
</biblioentry>
- <biblioentry id="STON86">
+ <biblioentry id="ston86">
<biblioset relation="article">
<title><ulink url="http://db.cs.berkeley.edu/papers/ERL-M85-95.pdf">The
design of <productname>POSTGRES</productname></ulink></title>
</confgroup>
</biblioentry>
- <biblioentry id="STON87a">
+ <biblioentry id="ston87a">
<biblioset relation="article">
<title>The design of the <productname>POSTGRES</productname> rules system</title>
<authorgroup>
</confgroup>
</biblioentry>
- <biblioentry id="STON87b">
+ <biblioentry id="ston87b">
<biblioset relation="article">
<title><ulink url="http://db.cs.berkeley.edu/papers/ERL-M87-06.pdf">The
design of the <productname>POSTGRES</productname> storage
</confgroup>
</biblioentry>
- <biblioentry id="STON89">
+ <biblioentry id="ston89">
<biblioset relation="article">
<title><ulink url="http://db.cs.berkeley.edu/papers/ERL-M89-82.pdf">A
commentary on the <productname>POSTGRES</productname> rules
</biblioset>
</biblioentry>
- <biblioentry id="STON89b">
+ <biblioentry id="ston89b">
<biblioset relation="article">
<title><ulink url="http://db.cs.berkeley.edu/papers/ERL-M89-17.pdf">The
case for partial indexes</ulink></title>
</biblioset>
</biblioentry>
- <biblioentry id="STON90a">
+ <biblioentry id="ston90a">
<biblioset relation="article">
<title><ulink url="http://db.cs.berkeley.edu/papers/ERL-M90-34.pdf">The
implementation of <productname>POSTGRES</productname></ulink></title>
</biblioset>
</biblioentry>
- <biblioentry id="STON90b">
+ <biblioentry id="ston90b">
<biblioset relation="article">
<title><ulink url="http://db.cs.berkeley.edu/papers/ERL-M90-36.pdf">On
Rules, Procedures, Caching and Views in Database Systems</ulink></title>
<!-- doc/src/sgml/brin.sgml -->
-<chapter id="BRIN">
+<chapter id="brin">
<title>BRIN Indexes</title>
<indexterm>
In addition to the typical B-tree search operators, <filename>btree_gist</filename>
also provides index support for <literal><></literal> (<quote>not
equals</quote>). This may be useful in combination with an
- <link linkend="SQL-CREATETABLE-EXCLUDE">exclusion constraint</link>,
+ <link linkend="sql-createtable-exclude">exclusion constraint</link>,
as described below.
</para>
</programlisting>
<para>
- Use an <link linkend="SQL-CREATETABLE-EXCLUDE">exclusion
+ Use an <link linkend="sql-createtable-exclude">exclusion
constraint</link> to enforce the rule that a cage at a zoo
can contain only one kind of animal:
</para>
<filename>postgresql.auto.conf</filename><indexterm><primary>postgresql.auto.conf</primary></indexterm>,
which has the same format as <filename>postgresql.conf</filename> but should
never be edited manually. This file holds settings provided through
- the <xref linkend="SQL-ALTERSYSTEM"> command. This file is automatically
+ the <xref linkend="sql-altersystem"> command. This file is automatically
read whenever <filename>postgresql.conf</filename> is, and its settings take
effect in the same way. Settings in <filename>postgresql.auto.conf</filename>
override those in <filename>postgresql.conf</filename>.
<para>
<productname>PostgreSQL</productname> provides three SQL
commands to establish configuration defaults.
- The already-mentioned <xref linkend="SQL-ALTERSYSTEM"> command
+ The already-mentioned <xref linkend="sql-altersystem"> command
provides a SQL-accessible means of changing global defaults; it is
functionally equivalent to editing <filename>postgresql.conf</filename>.
In addition, there are two commands that allow setting of defaults
<itemizedlist>
<listitem>
<para>
- The <xref linkend="SQL-SHOW"> command allows inspection of the
+ The <xref linkend="sql-show"> command allows inspection of the
current value of all parameters. The corresponding function is
<function>current_setting(setting_name text)</function>.
</para>
<listitem>
<para>
- The <xref linkend="SQL-SET"> command allows modification of the
+ The <xref linkend="sql-set"> command allows modification of the
current value of those parameters that can be set locally to a
session; it has no effect on other sessions.
The corresponding function is
<listitem>
<para>
- Using <xref linkend="SQL-UPDATE"> on this view, specifically
+ Using <xref linkend="sql-update"> on this view, specifically
updating the <structname>setting</structname> column, is the equivalent
of issuing <command>SET</command> commands. For example, the equivalent of
<programlisting>
<para>
For more information on row security policies,
- see <xref linkend="SQL-CREATEPOLICY">.
+ see <xref linkend="sql-createpolicy">.
</para>
</listitem>
</varlistentry>
This variable specifies one or more shared libraries that are to be
preloaded at connection start.
It contains a comma-separated list of library names, where each name
- is interpreted as for the <xref linkend="SQL-LOAD"> command.
+ is interpreted as for the <xref linkend="sql-load"> command.
Whitespace between entries is ignored; surround a library name with
double quotes if you need to include whitespace or commas in the name.
The parameter value only takes effect at the start of the connection.
This variable specifies one or more shared libraries that are to be
preloaded at connection start.
It contains a comma-separated list of library names, where each name
- is interpreted as for the <xref linkend="SQL-LOAD"> command.
+ is interpreted as for the <xref linkend="sql-load"> command.
Whitespace between entries is ignored; surround a library name with
double quotes if you need to include whitespace or commas in the name.
The parameter value only takes effect at the start of the connection.
This variable specifies one or more shared libraries to be preloaded at
server start.
It contains a comma-separated list of library names, where each name
- is interpreted as for the <xref linkend="SQL-LOAD"> command.
+ is interpreted as for the <xref linkend="sql-load"> command.
Whitespace between entries is ignored; surround a library name with
double quotes if you need to include whitespace or commas in the name.
This parameter can only be set at server start. If a specified
functionality using a more modern and standards-compliant infrastructure.
</para>
- <refentry id="CONTRIB-DBLINK-CONNECT">
+ <refentry id="contrib-dblink-connect">
<indexterm>
<primary>dblink_connect</primary>
</indexterm>
</refsect1>
</refentry>
- <refentry id="CONTRIB-DBLINK-CONNECT-U">
+ <refentry id="contrib-dblink-connect-u">
<indexterm>
<primary>dblink_connect_u</primary>
</indexterm>
</refsect1>
</refentry>
- <refentry id="CONTRIB-DBLINK-DISCONNECT">
+ <refentry id="contrib-dblink-disconnect">
<indexterm>
<primary>dblink_disconnect</primary>
</indexterm>
</refsect1>
</refentry>
- <refentry id="CONTRIB-DBLINK-FUNCTION">
+ <refentry id="contrib-dblink-function">
<indexterm>
<primary>dblink</primary>
</indexterm>
</refsect1>
</refentry>
- <refentry id="CONTRIB-DBLINK-EXEC">
+ <refentry id="contrib-dblink-exec">
<indexterm>
<primary>dblink_exec</primary>
</indexterm>
</refsect1>
</refentry>
- <refentry id="CONTRIB-DBLINK-OPEN">
+ <refentry id="contrib-dblink-open">
<indexterm>
<primary>dblink_open</primary>
</indexterm>
</refsect1>
</refentry>
- <refentry id="CONTRIB-DBLINK-FETCH">
+ <refentry id="contrib-dblink-fetch">
<indexterm>
<primary>dblink_fetch</primary>
</indexterm>
</refsect1>
</refentry>
- <refentry id="CONTRIB-DBLINK-CLOSE">
+ <refentry id="contrib-dblink-close">
<indexterm>
<primary>dblink_close</primary>
</indexterm>
</refsect1>
</refentry>
- <refentry id="CONTRIB-DBLINK-GET-CONNECTIONS">
+ <refentry id="contrib-dblink-get-connections">
<indexterm>
<primary>dblink_get_connections</primary>
</indexterm>
</refsect1>
</refentry>
- <refentry id="CONTRIB-DBLINK-ERROR-MESSAGE">
+ <refentry id="contrib-dblink-error-message">
<indexterm>
<primary>dblink_error_message</primary>
</indexterm>
</refsect1>
</refentry>
- <refentry id="CONTRIB-DBLINK-SEND-QUERY">
+ <refentry id="contrib-dblink-send-query">
<indexterm>
<primary>dblink_send_query</primary>
</indexterm>
</refsect1>
</refentry>
- <refentry id="CONTRIB-DBLINK-IS-BUSY">
+ <refentry id="contrib-dblink-is-busy">
<indexterm>
<primary>dblink_is_busy</primary>
</indexterm>
</refsect1>
</refentry>
- <refentry id="CONTRIB-DBLINK-GET-NOTIFY">
+ <refentry id="contrib-dblink-get-notify">
<indexterm>
<primary>dblink_get_notify</primary>
</indexterm>
</refsect1>
</refentry>
- <refentry id="CONTRIB-DBLINK-GET-RESULT">
+ <refentry id="contrib-dblink-get-result">
<indexterm>
<primary>dblink_get_result</primary>
</indexterm>
</refsect1>
</refentry>
- <refentry id="CONTRIB-DBLINK-CANCEL-QUERY">
+ <refentry id="contrib-dblink-cancel-query">
<indexterm>
<primary>dblink_cancel_query</primary>
</indexterm>
</refsect1>
</refentry>
- <refentry id="CONTRIB-DBLINK-GET-PKEY">
+ <refentry id="contrib-dblink-get-pkey">
<indexterm>
<primary>dblink_get_pkey</primary>
</indexterm>
</refsect1>
</refentry>
- <refentry id="CONTRIB-DBLINK-BUILD-SQL-INSERT">
+ <refentry id="contrib-dblink-build-sql-insert">
<indexterm>
<primary>dblink_build_sql_insert</primary>
</indexterm>
</refsect1>
</refentry>
- <refentry id="CONTRIB-DBLINK-BUILD-SQL-DELETE">
+ <refentry id="contrib-dblink-build-sql-delete">
<indexterm>
<primary>dblink_build_sql_delete</primary>
</indexterm>
</refsect1>
</refentry>
- <refentry id="CONTRIB-DBLINK-BUILD-SQL-UPDATE">
+ <refentry id="contrib-dblink-build-sql-update">
<indexterm>
<primary>dblink_build_sql_update</primary>
</indexterm>
</para>
<para>
- See also <link linkend="SQL-CREATETABLE-EXCLUDE"><command>CREATE
+ See also <link linkend="sql-createtable-exclude"><command>CREATE
TABLE ... CONSTRAINT ... EXCLUDE</command></link> for details.
</para>
<para>
The following functions can be used to work with the date type:
<variablelist>
- <varlistentry id="PGTYPESdatefromtimestamp">
+ <varlistentry id="pgtypesdatefromtimestamp">
<term><function>PGTYPESdate_from_timestamp</function></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="PGTYPESdatefromasc">
+ <varlistentry id="pgtypesdatefromasc">
<term><function>PGTYPESdate_from_asc</function></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="PGTYPESdatetoasc">
+ <varlistentry id="pgtypesdatetoasc">
<term><function>PGTYPESdate_to_asc</function></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="PGTYPESdatejulmdy">
+ <varlistentry id="pgtypesdatejulmdy">
<term><function>PGTYPESdate_julmdy</function></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="PGTYPESdatemdyjul">
+ <varlistentry id="pgtypesdatemdyjul">
<term><function>PGTYPESdate_mdyjul</function></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="PGTYPESdatedayofweek">
+ <varlistentry id="pgtypesdatedayofweek">
<term><function>PGTYPESdate_dayofweek</function></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="PGTYPESdatetoday">
+ <varlistentry id="pgtypesdatetoday">
<term><function>PGTYPESdate_today</function></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="PGTYPESdatefmtasc">
+ <varlistentry id="pgtypesdatefmtasc">
<term><function>PGTYPESdate_fmt_asc</function></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="PGTYPESdatedefmtasc">
+ <varlistentry id="pgtypesdatedefmtasc">
<term><function>PGTYPESdate_defmt_asc</function></term>
<listitem>
<para>
<para>
The following functions can be used to work with the timestamp type:
<variablelist>
- <varlistentry id="PGTYPEStimestampfromasc">
+ <varlistentry id="pgtypestimestampfromasc">
<term><function>PGTYPEStimestamp_from_asc</function></term>
<listitem>
<para>
<para>
The function returns the parsed timestamp on success. On error,
<literal>PGTYPESInvalidTimestamp</literal> is returned and <varname>errno</varname> is
- set to <literal>PGTYPES_TS_BAD_TIMESTAMP</literal>. See <xref linkend="PGTYPESInvalidTimestamp"> for important notes on this value.
+ set to <literal>PGTYPES_TS_BAD_TIMESTAMP</literal>. See <xref linkend="pgtypesinvalidtimestamp"> for important notes on this value.
</para>
<para>
In general, the input string can contain any combination of an allowed
</listitem>
</varlistentry>
- <varlistentry id="PGTYPEStimestamptoasc">
+ <varlistentry id="pgtypestimestamptoasc">
<term><function>PGTYPEStimestamp_to_asc</function></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="PGTYPEStimestampcurrent">
+ <varlistentry id="pgtypestimestampcurrent">
<term><function>PGTYPEStimestamp_current</function></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="PGTYPEStimestampfmtasc">
+ <varlistentry id="pgtypestimestampfmtasc">
<term><function>PGTYPEStimestamp_fmt_asc</function></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="PGTYPEStimestampsub">
+ <varlistentry id="pgtypestimestampsub">
<term><function>PGTYPEStimestamp_sub</function></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="PGTYPEStimestampdefmtasc">
+ <varlistentry id="pgtypestimestampdefmtasc">
<term><function>PGTYPEStimestamp_defmt_asc</function></term>
<listitem>
<para>
</para>
<para>
This is the reverse function to <xref
- linkend="PGTYPEStimestampfmtasc">. See the documentation there in
+ linkend="pgtypestimestampfmtasc">. See the documentation there in
order to find out about the possible formatting mask entries.
</para>
</listitem>
</varlistentry>
- <varlistentry id="PGTYPEStimestampaddinterval">
+ <varlistentry id="pgtypestimestampaddinterval">
<term><function>PGTYPEStimestamp_add_interval</function></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="PGTYPEStimestampsubinterval">
+ <varlistentry id="pgtypestimestampsubinterval">
<term><function>PGTYPEStimestamp_sub_interval</function></term>
<listitem>
<para>
The following functions can be used to work with the interval type:
<variablelist>
- <varlistentry id="PGTYPESintervalnew">
+ <varlistentry id="pgtypesintervalnew">
<term><function>PGTYPESinterval_new</function></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="PGTYPESintervalfree">
+ <varlistentry id="pgtypesintervalfree">
<term><function>PGTYPESinterval_free</function></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="PGTYPESintervalfromasc">
+ <varlistentry id="pgtypesintervalfromasc">
<term><function>PGTYPESinterval_from_asc</function></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="PGTYPESintervaltoasc">
+ <varlistentry id="pgtypesintervaltoasc">
<term><function>PGTYPESinterval_to_asc</function></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="PGTYPESintervalcopy">
+ <varlistentry id="pgtypesintervalcopy">
<term><function>PGTYPESinterval_copy</function></term>
<listitem>
<para>
<title>Special Constants of pgtypeslib</title>
<para>
<variablelist>
- <varlistentry id="PGTYPESInvalidTimestamp">
+ <varlistentry id="pgtypesinvalidtimestamp">
<term><literal>PGTYPESInvalidTimestamp</literal></term>
<listitem>
<para>
<para>
For more details about the <function>ECPGget_PGconn()</function>, see
<xref linkend="ecpg-library">. For information about the large
- object function interface, see <xref linkend="largeObjects">.
+ object function interface, see <xref linkend="largeobjects">.
</para>
<para>
that it sets to the current date.
</para>
<para>
- Internally this function uses the <xref linkend="PGTYPESdatetoday">
+ Internally this function uses the <xref linkend="pgtypesdatetoday">
function.
</para>
</listitem>
The function always returns 0 at the moment.
</para>
<para>
- Internally the function uses the <xref linkend="PGTYPESdatejulmdy">
+ Internally the function uses the <xref linkend="pgtypesdatejulmdy">
function.
</para>
</listitem>
</para>
<para>
Internally this function is implemented to use the <xref
- linkend="PGTYPESdatedefmtasc"> function. See the reference there for a
+ linkend="pgtypesdatedefmtasc"> function. See the reference there for a
table of example input.
</para>
</listitem>
On success, 0 is returned and a negative value if an error occurred.
</para>
<para>
- Internally this function uses the <xref linkend="PGTYPESdatefmtasc">
+ Internally this function uses the <xref linkend="pgtypesdatefmtasc">
function, see the reference there for examples.
</para>
</listitem>
</para>
<para>
Internally the function is implemented to use the function <xref
- linkend="PGTYPESdatemdyjul">.
+ linkend="pgtypesdatemdyjul">.
</para>
</listitem>
</varlistentry>
</para>
<para>
Internally the function is implemented to use the function <xref
- linkend="PGTYPESdatedayofweek">.
+ linkend="pgtypesdatedayofweek">.
</para>
</listitem>
</varlistentry>
</para>
<para>
Internally this function uses the <xref
- linkend="PGTYPEStimestampfromasc"> function. See the reference there
+ linkend="pgtypestimestampfromasc"> function. See the reference there
for a table with example inputs.
</para>
</listitem>
</para>
<para>
This function is implemented by means of the <xref
- linkend="PGTYPEStimestampdefmtasc"> function. See the documentation
+ linkend="pgtypestimestampdefmtasc"> function. See the documentation
there for a list of format specifiers that can be used.
</para>
<para>
</para>
<para>
Internally, this function uses the <xref
- linkend="PGTYPEStimestampfmtasc"> function. See the reference there for
+ linkend="pgtypestimestampfmtasc"> function. See the reference there for
information on what format mask specifiers can be used.
</para>
</listitem>
logging and checkpoint processing. This information is cluster-wide,
and not specific to any one database. They provide most of the same
information, from the same source, as
- <xref linkend="APP-PGCONTROLDATA">, although in a form better suited
+ <xref linkend="app-pgcontroldata">, although in a form better suited
to <acronym>SQL</acronym> functions.
</para>
</para>
<para>
For more information about creating triggers, see
- <xref linkend="SQL-CREATETRIGGER">.
+ <xref linkend="sql-createtrigger">.
</para>
</sect1>
<listitem>
<para>
- <xref linkend="ELMA04">
+ <xref linkend="elma04">
</para>
</listitem>
<listitem>
<para>
- <xref linkend="FONG">
+ <xref linkend="fong">
</para>
</listitem>
</itemizedlist>
<!-- doc/src/sgml/gin.sgml -->
-<chapter id="GIN">
+<chapter id="gin">
<title>GIN Indexes</title>
<indexterm>
<!-- doc/src/sgml/gist.sgml -->
-<chapter id="GiST">
+<chapter id="gist">
<title>GiST Indexes</title>
<indexterm>
Office (<acronym>ARO</acronym>), the National Science Foundation
(<acronym>NSF</acronym>), and ESL, Inc. The implementation of
<productname>POSTGRES</productname> began in 1986. The initial
- concepts for the system were presented in <xref linkend="STON86">,
+ concepts for the system were presented in <xref linkend="ston86">,
and the definition of the initial data model appeared in <xref
- linkend="ROWE87">. The design of the rule system at that time was
- described in <xref linkend="STON87a">. The rationale and
+ linkend="rowe87">. The design of the rule system at that time was
+ described in <xref linkend="ston87a">. The rationale and
architecture of the storage manager were detailed in <xref
- linkend="STON87b">.
+ linkend="ston87b">.
</para>
<para>
releases since then. The first <quote>demoware</quote> system
became operational in 1987 and was shown at the 1988
<acronym>ACM-SIGMOD</acronym> Conference. Version 1, described in
- <xref linkend="STON90a">, was released to a few external users in
+ <xref linkend="ston90a">, was released to a few external users in
June 1989. In response to a critique of the first rule system
- (<xref linkend="STON89">), the rule system was redesigned (<xref
- linkend="STON90b">), and Version 2 was released in June 1990 with
+ (<xref linkend="ston89">), the rule system was redesigned (<xref
+ linkend="ston90b">), and Version 2 was released in June 1990 with
the new rule system. Version 3 appeared in 1991 and added support
for multiple storage managers, an improved query executor, and a
rewritten rule system. For the most part, subsequent releases
In production environments this is often unacceptable.
It is possible to allow writes to occur in parallel with index
creation, but there are several caveats to be aware of —
- for more information see <xref linkend="SQL-CREATEINDEX-CONCURRENTLY"
- endterm="SQL-CREATEINDEX-CONCURRENTLY-title">.
+ for more information see <xref linkend="sql-createindex-concurrently"
+ endterm="sql-createindex-concurrently-title">.
</para>
<para>
documented in <xref linkend="gist-builtin-opclasses-table">.
Many other GiST operator
classes are available in the <literal>contrib</literal> collection or as separate
- projects. For more information see <xref linkend="GiST">.
+ projects. For more information see <xref linkend="gist">.
</para>
<para>
these operators.)
The SP-GiST operator classes included in the standard distribution are
documented in <xref linkend="spgist-builtin-opclasses-table">.
- For more information see <xref linkend="SPGiST">.
+ For more information see <xref linkend="spgist">.
</para>
<para>
documented in <xref linkend="gin-builtin-opclasses-table">.
Many other GIN operator
classes are available in the <literal>contrib</literal> collection or as separate
- projects. For more information see <xref linkend="GIN">.
+ projects. For more information see <xref linkend="gin">.
</para>
<para>
The BRIN operator classes included in the standard distribution are
documented in <xref linkend="brin-builtin-opclasses-table">.
- For more information see <xref linkend="BRIN">.
+ For more information see <xref linkend="brin">.
</para>
</sect1>
<para>
More information about partial indexes can be found in <xref
- linkend="STON89b">, <xref linkend="OLSON93">, and <xref
- linkend="SESHADRI95">.
+ linkend="ston89b">, <xref linkend="olson93">, and <xref
+ linkend="seshadri95">.
</para>
</sect1>
<function>PQprepare</function> creates a prepared statement for later
execution with <function>PQexecPrepared</function>. This feature allows
commands to be executed repeatedly without being parsed and
- planned each time; see <xref linkend="SQL-PREPARE"> for details.
+ planned each time; see <xref linkend="sql-prepare"> for details.
<function>PQprepare</function> is supported only in protocol 3.0 and later
connections; it will fail when using protocol 2.0.
</para>
<!-- doc/src/sgml/lobj.sgml -->
- <chapter id="largeObjects">
+ <chapter id="largeobjects">
<title>Large Objects</title>
<indexterm zone="largeobjects"><primary>large object</primary></indexterm>
fallback if no other solution is possible. If a replica identity other
than <quote>full</quote> is set on the publisher side, a replica identity
comprising the same or fewer columns must also be set on the subscriber
- side. See <xref linkend="SQL-CREATETABLE-REPLICA-IDENTITY"> for details on
+ side. See <xref linkend="sql-createtable-replica-identity"> for details on
how to set the replica identity. If a table without a replica identity is
added to a publication that replicates <command>UPDATE</command>
or <command>DELETE</command> operations then
by <command>INSERT</command> and the new row version created
by <command>UPDATE</command>. Availability of old row versions for
<command>UPDATE</command> and <command>DELETE</command> depends on
- the configured replica identity (see <xref linkend="SQL-CREATETABLE-REPLICA-IDENTITY">).
+ the configured replica identity (see <xref linkend="sql-createtable-replica-identity">).
</para>
<para>
<note>
<para>
Only changes in user defined tables that are not unlogged
- (see <xref linkend="SQL-CREATETABLE-UNLOGGED">) and not temporary
- (see <xref linkend="SQL-CREATETABLE-TEMPORARY">) can be extracted using
+ (see <xref linkend="sql-createtable-unlogged">) and not temporary
+ (see <xref linkend="sql-createtable-temporary">) can be extracted using
logical decoding.
</para>
</note>
<command>CREATE STATISTICS</command> and
<command>ALTER TABLE VALIDATE</command> and other
<command>ALTER TABLE</command> variants (for full details see
- <xref linkend="SQL-ALTERTABLE">).
+ <xref linkend="sql-altertable">).
</para>
</listitem>
</varlistentry>
<para>
Acquired by <command>CREATE COLLATION</command>,
<command>CREATE TRIGGER</command>, and many forms of
- <command>ALTER TABLE</command> (see <xref linkend="SQL-ALTERTABLE">).
+ <command>ALTER TABLE</command> (see <xref linkend="sql-altertable">).
</para>
</listitem>
</varlistentry>
<para>
The <filename>passwordcheck</filename> module checks users' passwords
whenever they are set with
- <xref linkend="SQL-CREATEROLE"> or
- <xref linkend="SQL-ALTERROLE">.
+ <xref linkend="sql-createrole"> or
+ <xref linkend="sql-alterrole">.
If a password is considered too weak, it will be rejected and
the command will terminate with an error.
</para>
<listitem>
<para>
- Create <link linkend="SQL-CREATETABLE-UNLOGGED">unlogged
+ Create <link linkend="sql-createtable-unlogged">unlogged
tables</link> to avoid <acronym>WAL</acronym> writes, though it
makes the tables non-crash-safe.
</para>
AS t1(proname name, prosrc text)
WHERE proname LIKE 'bytea%';
</programlisting>
- The <xref linkend="CONTRIB-DBLINK-FUNCTION"> function
+ The <xref linkend="contrib-dblink-function"> function
(part of the <xref linkend="dblink"> module) executes
a remote query. It is declared to return
<type>record</type> since it might be used for any kind of query.
tutorial is only intended to give you an introduction and is in no
way a complete tutorial on <acronym>SQL</acronym>. Numerous books
have been written on <acronym>SQL</acronym>, including <xref
- linkend="MELT93"> and <xref linkend="DATE97">.
+ linkend="melt93"> and <xref linkend="date97">.
You should be aware that some <productname>PostgreSQL</productname>
language features are extensions to the standard.
</para>
</listitem>
</itemizedlist>
In addition, you can define your own range types;
- see <xref linkend="SQL-CREATETYPE"> for more information.
+ see <xref linkend="sql-createtype"> for more information.
</para>
</sect2>
</programlisting>
<para>
- See <xref linkend="SQL-CREATETYPE"> for more information about creating
+ See <xref linkend="sql-createtype"> for more information about creating
range types.
</para>
</sect2>
While <literal>UNIQUE</literal> is a natural constraint for scalar
values, it is usually unsuitable for range types. Instead, an
exclusion constraint is often more appropriate
- (see <link linkend="SQL-CREATETABLE-EXCLUDE">CREATE TABLE
+ (see <link linkend="sql-createtable-exclude">CREATE TABLE
... CONSTRAINT ... EXCLUDE</link>). Exclusion constraints allow the
specification of constraints such as <quote>non-overlapping</quote> on a
range type. For example:
PostgreSQL documentation
-->
-<refentry id="SQL-ABORT">
+<refentry id="sql-abort">
<indexterm zone="sql-abort">
<primary>ABORT</primary>
</indexterm>
all the updates made by the transaction to be discarded.
This command is identical
in behavior to the standard <acronym>SQL</acronym> command
- <xref linkend="SQL-ROLLBACK">,
+ <xref linkend="sql-rollback">,
and is present only for historical reasons.
</para>
</refsect1>
<title>Notes</title>
<para>
- Use <xref linkend="SQL-COMMIT"> to
+ Use <xref linkend="sql-commit"> to
successfully terminate a transaction.
</para>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERAGGREGATE">
+<refentry id="sql-alteraggregate">
<indexterm zone="sql-alteraggregate">
<primary>ALTER AGGREGATE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERCOLLATION">
+<refentry id="sql-altercollation">
<indexterm zone="sql-altercollation">
<primary>ALTER COLLATION</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERCONVERSION">
+<refentry id="sql-alterconversion">
<indexterm zone="sql-alterconversion">
<primary>ALTER CONVERSION</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERDATABASE">
+<refentry id="sql-alterdatabase">
<indexterm zone="sql-alterdatabase">
<primary>ALTER DATABASE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERDEFAULTPRIVILEGES">
+<refentry id="sql-alterdefaultprivileges">
<indexterm zone="sql-alterdefaultprivileges">
<primary>ALTER DEFAULT PRIVILEGES</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERDOMAIN">
+<refentry id="sql-alterdomain">
<indexterm zone="sql-alterdomain">
<primary>ALTER DOMAIN</primary>
</indexterm>
<listitem>
<para>
This form adds a new constraint to a domain using the same syntax as
- <xref linkend="SQL-CREATEDOMAIN">.
+ <xref linkend="sql-createdomain">.
When a new constraint is added to a domain, all columns using that
domain will be checked against the newly added constraint. These
checks can be suppressed by adding the new constraint using the
</programlisting></para>
</refsect1>
- <refsect1 id="SQL-ALTERDOMAIN-compatibility">
+ <refsect1 id="sql-alterdomain-compatibility">
<title>Compatibility</title>
<para>
</para>
</refsect1>
- <refsect1 id="SQL-ALTERDOMAIN-see-also">
+ <refsect1 id="sql-alterdomain-see-also">
<title>See Also</title>
<simplelist type="inline">
PostgreSQL documentation
-->
-<refentry id="SQL-ALTEREVENTTRIGGER">
+<refentry id="sql-altereventtrigger">
<indexterm zone="sql-altereventtrigger">
<primary>ALTER EVENT TRIGGER</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTEREXTENSION">
+<refentry id="sql-alterextension">
<indexterm zone="sql-alterextension">
<primary>ALTER EXTENSION</primary>
</indexterm>
</para>
</refsect1>
- <refsect1 id="SQL-ALTEREXTENSION-see-also">
+ <refsect1 id="sql-alterextension-see-also">
<title>See Also</title>
<simplelist type="inline">
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERFOREIGNDATAWRAPPER">
+<refentry id="sql-alterforeigndatawrapper">
<indexterm zone="sql-alterforeigndatawrapper">
<primary>ALTER FOREIGN DATA WRAPPER</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERFOREIGNTABLE">
+<refentry id="sql-alterforeigntable">
<indexterm zone="sql-alterforeigntable">
<primary>ALTER FOREIGN TABLE</primary>
</indexterm>
<listitem>
<para>
This form adds a new column to the foreign table, using the same syntax as
- <xref linkend="SQL-CREATEFOREIGNTABLE">.
+ <xref linkend="sql-createforeigntable">.
Unlike the case when adding a column to a regular table, nothing happens
to the underlying storage: this action simply declares that
some new column is now accessible through the foreign table.
<listitem>
<para>
This form adds a new constraint to a foreign table, using the same
- syntax as <xref linkend="SQL-CREATEFOREIGNTABLE">.
+ syntax as <xref linkend="sql-createforeigntable">.
Currently only <literal>CHECK</literal> constraints are supported.
</para>
done to verify the constraint is correct; rather, this action simply
declares that some new condition should be assumed to hold for all rows
in the foreign table. (See the discussion
- in <xref linkend="SQL-CREATEFOREIGNTABLE">.)
+ in <xref linkend="sql-createforeigntable">.)
If the constraint is marked <literal>NOT VALID</literal>, then it isn't
assumed to hold, but is only recorded for possible future use.
</para>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERFUNCTION">
+<refentry id="sql-alterfunction">
<indexterm zone="sql-alterfunction">
<primary>ALTER FUNCTION</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERGROUP">
+<refentry id="sql-altergroup">
<indexterm zone="sql-altergroup">
<primary>ALTER GROUP</primary>
</indexterm>
<quote>group</quote> for this purpose.) These variants are effectively
equivalent to granting or revoking membership in the role named as the
<quote>group</quote>; so the preferred way to do this is to use
- <xref linkend="SQL-GRANT"> or
- <xref linkend="SQL-REVOKE">.
+ <xref linkend="sql-grant"> or
+ <xref linkend="sql-revoke">.
</para>
<para>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERINDEX">
+<refentry id="sql-alterindex">
<indexterm zone="sql-alterindex">
<primary>ALTER INDEX</primary>
</indexterm>
this command, use <command>ALTER DATABASE</command> or explicit
<command>ALTER INDEX</command> invocations instead if desired.
See also
- <xref linkend="SQL-CREATETABLESPACE">.
+ <xref linkend="sql-createtablespace">.
</para>
</listitem>
</varlistentry>
<para>
This form changes one or more index-method-specific storage parameters
for the index. See
- <xref linkend="SQL-CREATEINDEX">
+ <xref linkend="sql-createindex">
for details on the available parameters. Note that the index contents
will not be modified immediately by this command; depending on the
parameter you might need to rebuild the index with
- <xref linkend="SQL-REINDEX">
+ <xref linkend="sql-reindex">
to get the desired effects.
</para>
</listitem>
<para>
These operations are also possible using
- <xref linkend="SQL-ALTERTABLE">.
+ <xref linkend="sql-altertable">.
<command>ALTER INDEX</command> is in fact just an alias for the forms
of <command>ALTER TABLE</command> that apply to indexes.
</para>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERLANGUAGE">
+<refentry id="sql-alterlanguage">
<indexterm zone="sql-alterlanguage">
<primary>ALTER LANGUAGE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERLARGEOBJECT">
+<refentry id="sql-alterlargeobject">
<indexterm zone="sql-alterlargeobject">
<primary>ALTER LARGE OBJECT</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERMATERIALIZEDVIEW">
+<refentry id="sql-altermaterializedview">
<indexterm zone="sql-altermaterializedview">
<primary>ALTER MATERIALIZED VIEW</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTEROPCLASS">
+<refentry id="sql-alteropclass">
<indexterm zone="sql-alteropclass">
<primary>ALTER OPERATOR CLASS</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTEROPERATOR">
+<refentry id="sql-alteroperator">
<indexterm zone="sql-alteroperator">
<primary>ALTER OPERATOR</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTEROPFAMILY">
+<refentry id="sql-alteropfamily">
<indexterm zone="sql-alteropfamily">
<primary>ALTER OPERATOR FAMILY</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERPOLICY">
+<refentry id="sql-alterpolicy">
<indexterm zone="sql-alterpolicy">
<primary>ALTER POLICY</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERPUBLICATION">
+<refentry id="sql-alterpublication">
<indexterm zone="sql-alterpublication">
<primary>ALTER PUBLICATION</primary>
</indexterm>
<listitem>
<para>
This clause alters publication parameters originally set by
- <xref linkend="SQL-CREATEPUBLICATION">. See there for more information.
+ <xref linkend="sql-createpublication">. See there for more information.
</para>
</listitem>
</varlistentry>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERROLE">
+<refentry id="sql-alterrole">
<indexterm zone="sql-alterrole">
<primary>ALTER ROLE</primary>
</indexterm>
<xref linkend="sql-createrole">.
(All the possible attributes are covered,
except that there are no options for adding or removing memberships; use
- <xref linkend="SQL-GRANT"> and
- <xref linkend="SQL-REVOKE"> for that.)
+ <xref linkend="sql-grant"> and
+ <xref linkend="sql-revoke"> for that.)
Attributes not mentioned in the command retain their previous settings.
Database superusers can change any of these settings for any role.
Roles having <literal>CREATEROLE</literal> privilege can change any of these
<listitem>
<para>
These clauses alter attributes originally set by
- <xref linkend="SQL-CREATEROLE">. For more information, see the
+ <xref linkend="sql-createrole">. For more information, see the
<command>CREATE ROLE</command> reference page.
</para>
</listitem>
<title>Notes</title>
<para>
- Use <xref linkend="SQL-CREATEROLE">
- to add new roles, and <xref linkend="SQL-DROPROLE"> to remove a role.
+ Use <xref linkend="sql-createrole">
+ to add new roles, and <xref linkend="sql-droprole"> to remove a role.
</para>
<para>
<command>ALTER ROLE</command> cannot change a role's memberships.
- Use <xref linkend="SQL-GRANT"> and
- <xref linkend="SQL-REVOKE">
+ Use <xref linkend="sql-grant"> and
+ <xref linkend="sql-revoke">
to do that.
</para>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERRULE">
+<refentry id="sql-alterrule">
<indexterm zone="sql-alterrule">
<primary>ALTER RULE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERSCHEMA">
+<refentry id="sql-alterschema">
<indexterm zone="sql-alterschema">
<primary>ALTER SCHEMA</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERSEQUENCE">
+<refentry id="sql-altersequence">
<indexterm zone="sql-altersequence">
<primary>ALTER SEQUENCE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERSERVER">
+<refentry id="sql-alterserver">
<indexterm zone="sql-alterserver">
<primary>ALTER SERVER</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERSTATISTICS">
+<refentry id="sql-alterstatistics">
<indexterm zone="sql-alterstatistics">
<primary>ALTER STATISTICS</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERSUBSCRIPTION">
+<refentry id="sql-altersubscription">
<indexterm zone="sql-altersubscription">
<primary>ALTER SUBSCRIPTION</primary>
</indexterm>
<listitem>
<para>
This clause alters the connection property originally set by
- <xref linkend="SQL-CREATESUBSCRIPTION">. See there for more
+ <xref linkend="sql-createsubscription">. See there for more
information.
</para>
</listitem>
<listitem>
<para>
Changes list of subscribed publications. See
- <xref linkend="SQL-CREATESUBSCRIPTION"> for more information.
+ <xref linkend="sql-createsubscription"> for more information.
By default this command will also act like <literal>REFRESH
PUBLICATION</literal>.
</para>
<listitem>
<para>
This clause alters parameters originally set by
- <xref linkend="SQL-CREATESUBSCRIPTION">. See there for more
+ <xref linkend="sql-createsubscription">. See there for more
information. The allowed options are <literal>slot_name</literal> and
<literal>synchronous_commit</literal>
</para>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERSYSTEM">
+<refentry id="sql-altersystem">
<indexterm zone="sql-altersystem">
<primary>ALTER SYSTEM</primary>
</indexterm>
<title>See Also</title>
<simplelist type="inline">
- <member><xref linkend="SQL-SET"></member>
- <member><xref linkend="SQL-SHOW"></member>
+ <member><xref linkend="sql-set"></member>
+ <member><xref linkend="sql-show"></member>
</simplelist>
</refsect1>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERTABLE">
+<refentry id="sql-altertable">
<indexterm zone="sql-altertable">
<primary>ALTER TABLE</primary>
</indexterm>
<listitem>
<para>
This form adds a new column to the table, using the same syntax as
- <xref linkend="SQL-CREATETABLE">. If <literal>IF NOT EXISTS</literal>
+ <xref linkend="sql-createtable">. If <literal>IF NOT EXISTS</literal>
is specified and a column already exists with this name,
no error is thrown.
</para>
<listitem>
<para>
This form adds a new constraint to a table using the same syntax as
- <xref linkend="SQL-CREATETABLE">, plus the option <literal>NOT
+ <xref linkend="sql-createtable">, plus the option <literal>NOT
VALID</literal>, which is currently only allowed for foreign key
and CHECK constraints.
If the constraint is marked <literal>NOT VALID</literal>, the
even if row level security is disabled - in this case, the policies will
NOT be applied and the policies will be ignored.
See also
- <xref linkend="SQL-CREATEPOLICY">.
+ <xref linkend="sql-createpolicy">.
</para>
</listitem>
</varlistentry>
disabled (the default) then row level security will not be applied when
the user is the table owner.
See also
- <xref linkend="SQL-CREATEPOLICY">.
+ <xref linkend="sql-createpolicy">.
</para>
</listitem>
</varlistentry>
<listitem>
<para>
This form selects the default index for future
- <xref linkend="SQL-CLUSTER">
+ <xref linkend="sql-cluster">
operations. It does not actually re-cluster the table.
</para>
<para>
<listitem>
<para>
This form removes the most recently used
- <xref linkend="SQL-CLUSTER">
+ <xref linkend="sql-cluster">
index specification from the table. This affects
future cluster operations that don't specify an index.
</para>
<literal>information_schema</literal> relations are not considered part
of the system catalogs and will be moved.
See also
- <xref linkend="SQL-CREATETABLESPACE">.
+ <xref linkend="sql-createtablespace">.
</para>
</listitem>
</varlistentry>
<listitem>
<para>
This form changes the table from unlogged to logged or vice-versa
- (see <xref linkend="SQL-CREATETABLE-UNLOGGED">). It cannot be applied
+ (see <xref linkend="sql-createtable-unlogged">). It cannot be applied
to a temporary table.
</para>
</listitem>
<listitem>
<para>
This form changes one or more storage parameters for the table. See
- <xref linkend="SQL-CREATETABLE-storage-parameters"
- endterm="SQL-CREATETABLE-storage-parameters-title">
+ <xref linkend="sql-createtable-storage-parameters"
+ endterm="sql-createtable-storage-parameters-title">
for details on the available parameters. Note that the table contents
will not be modified immediately by this command; depending on the
parameter you might need to rewrite the table to get the desired effects.
- That can be done with <link linkend="SQL-VACUUM">VACUUM
- FULL</link>, <xref linkend="SQL-CLUSTER"> or one of the forms
+ That can be done with <link linkend="sql-vacuum">VACUUM
+ FULL</link>, <xref linkend="sql-cluster"> or one of the forms
of <command>ALTER TABLE</command> that forces a table rewrite.
For planner related parameters, changes will take effect from the next
time the table is locked so currently executing queries will not be
</listitem>
</varlistentry>
- <varlistentry id="SQL-CREATETABLE-REPLICA-IDENTITY">
+ <varlistentry id="sql-createtable-replica-identity">
<term><literal>REPLICA IDENTITY</literal></term>
<listitem>
<para>
<para>
If the new partition is a foreign table, nothing is done to verify
that all the rows in the foreign table obey the partition constraint.
- (See the discussion in <xref linkend="SQL-CREATEFOREIGNTABLE"> about
+ (See the discussion in <xref linkend="sql-createforeigntable"> about
constraints on the foreign table.)
</para>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERTABLESPACE">
+<refentry id="sql-altertablespace">
<indexterm zone="sql-altertablespace">
<primary>ALTER TABLESPACE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERTRIGGER">
+<refentry id="sql-altertrigger">
<indexterm zone="sql-altertrigger">
<primary>ALTER TRIGGER</primary>
</indexterm>
<para>
The ability to temporarily enable or disable a trigger is provided by
- <xref linkend="SQL-ALTERTABLE">, not by
+ <xref linkend="sql-altertable">, not by
<command>ALTER TRIGGER</command>, because <command>ALTER TRIGGER</command> has no
convenient way to express the option of enabling or disabling all of
a table's triggers at once.
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERTSCONFIG">
+<refentry id="sql-altertsconfig">
<indexterm zone="sql-altertsconfig">
<primary>ALTER TEXT SEARCH CONFIGURATION</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERTSDICTIONARY">
+<refentry id="sql-altertsdictionary">
<indexterm zone="sql-altertsdictionary">
<primary>ALTER TEXT SEARCH DICTIONARY</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERTSPARSER">
+<refentry id="sql-altertsparser">
<indexterm zone="sql-altertsparser">
<primary>ALTER TEXT SEARCH PARSER</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERTSTEMPLATE">
+<refentry id="sql-altertstemplate">
<indexterm zone="sql-altertstemplate">
<primary>ALTER TEXT SEARCH TEMPLATE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERTYPE">
+<refentry id="sql-altertype">
<indexterm zone="sql-altertype">
<primary>ALTER TYPE</primary>
</indexterm>
<listitem>
<para>
This form adds a new attribute to a composite type, using the same syntax as
- <xref linkend="SQL-CREATETYPE">.
+ <xref linkend="sql-createtype">.
</para>
</listitem>
</varlistentry>
</para>
</refsect1>
- <refsect1 id="SQL-ALTERTYPE-see-also">
+ <refsect1 id="sql-altertype-see-also">
<title>See Also</title>
<simplelist type="inline">
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERUSER">
+<refentry id="sql-alteruser">
<indexterm zone="sql-alteruser">
<primary>ALTER USER</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERUSERMAPPING">
+<refentry id="sql-alterusermapping">
<indexterm zone="sql-alterusermapping">
<primary>ALTER USER MAPPING</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ALTERVIEW">
+<refentry id="sql-alterview">
<indexterm zone="sql-alterview">
<primary>ALTER VIEW</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ANALYZE">
+<refentry id="sql-analyze">
<indexterm zone="sql-analyze">
<primary>ANALYZE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-BEGIN">
+<refentry id="sql-begin">
<indexterm zone="sql-begin">
<primary>BEGIN</primary>
</indexterm>
</para>
<para>
- Use <xref linkend="SQL-COMMIT"> or
- <xref linkend="SQL-ROLLBACK">
+ Use <xref linkend="sql-commit"> or
+ <xref linkend="sql-rollback">
to terminate a transaction block.
</para>
PostgreSQL documentation
-->
-<refentry id="SQL-CLOSE">
+<refentry id="sql-close">
<indexterm zone="sql-close">
<primary>CLOSE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CLUSTER">
+<refentry id="sql-cluster">
<indexterm zone="sql-cluster">
<primary>CLUSTER</primary>
</indexterm>
<command>CLUSTER <replaceable class="parameter">table_name</replaceable></command>
reclusters the table using the same index as before. You can also
use the <literal>CLUSTER</literal> or <literal>SET WITHOUT CLUSTER</literal>
- forms of <xref linkend="SQL-ALTERTABLE"> to set the index to be used for
+ forms of <xref linkend="sql-altertable"> to set the index to be used for
future cluster operations, or to clear any previous setting.
</para>
PostgreSQL documentation
-->
-<refentry id="APP-CLUSTERDB">
+<refentry id="app-clusterdb">
<indexterm zone="app-clusterdb">
<primary>clusterdb</primary>
</indexterm>
<para>
<application>clusterdb</application> is a wrapper around the SQL
- command <xref linkend="SQL-CLUSTER">.
+ command <xref linkend="sql-cluster">.
There is no effective difference between clustering databases via
this utility and via other methods for accessing the server.
</para>
<title>Diagnostics</title>
<para>
- In case of difficulty, see <xref linkend="SQL-CLUSTER">
- and <xref linkend="APP-PSQL"> for
+ In case of difficulty, see <xref linkend="sql-cluster">
+ and <xref linkend="app-psql"> for
discussions of potential problems and error messages.
The database server must be running at the
targeted host. Also, any default connection settings and environment
PostgreSQL documentation
-->
-<refentry id="SQL-COMMENT">
+<refentry id="sql-comment">
<indexterm zone="sql-comment">
<primary>COMMENT</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-COMMIT">
+<refentry id="sql-commit">
<indexterm zone="sql-commit">
<primary>COMMIT</primary>
</indexterm>
<title>Notes</title>
<para>
- Use <xref linkend="SQL-ROLLBACK"> to
+ Use <xref linkend="sql-rollback"> to
abort a transaction.
</para>
PostgreSQL documentation
-->
-<refentry id="SQL-COMMIT-PREPARED">
+<refentry id="sql-commit-prepared">
<indexterm zone="sql-commit-prepared">
<primary>COMMIT PREPARED</primary>
</indexterm>
-->
-<refentry id="SQL-COPY">
+<refentry id="sql-copy">
<indexterm zone="sql-copy">
<primary>COPY</primary>
</indexterm>
<para>
Do not confuse <command>COPY</command> with the
<application>psql</application> instruction
- <command><link linkend="APP-PSQL-meta-commands-copy">\copy</link></command>. <command>\copy</command> invokes
+ <command><link linkend="app-psql-meta-commands-copy">\copy</link></command>. <command>\copy</command> invokes
<command>COPY FROM STDIN</command> or <command>COPY TO
STDOUT</command>, and then fetches/stores the data in a file
accessible to the <application>psql</application> client. Thus,
PostgreSQL documentation
-->
-<refentry id="SQL-CREATEAGGREGATE">
+<refentry id="sql-createaggregate">
<indexterm zone="sql-createaggregate">
<primary>CREATE AGGREGATE</primary>
</indexterm>
<!-- doc/src/sgml/ref/create_cast.sgml -->
-<refentry id="SQL-CREATECAST">
+<refentry id="sql-createcast">
<indexterm zone="sql-createcast">
<primary>CREATE CAST</primary>
</indexterm>
<!-- doc/src/sgml/ref/create_collation.sgml -->
-<refentry id="SQL-CREATECOLLATION">
+<refentry id="sql-createcollation">
<indexterm zone="sql-createcollation">
<primary>CREATE COLLATION</primary>
</indexterm>
<!-- doc/src/sgml/ref/create_conversion.sgml -->
-<refentry id="SQL-CREATECONVERSION">
+<refentry id="sql-createconversion">
<indexterm zone="sql-createconversion">
<primary>CREATE CONVERSION</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATEDATABASE">
+<refentry id="sql-createdatabase">
<indexterm zone="sql-createdatabase">
<primary>CREATE DATABASE</primary>
</indexterm>
<para>
To create a database, you must be a superuser or have the special
<literal>CREATEDB</literal> privilege.
- See <xref linkend="SQL-CREATEUSER">.
+ See <xref linkend="sql-createuser">.
</para>
<para>
</para>
<para>
- Use <xref linkend="SQL-DROPDATABASE"> to remove a database.
+ Use <xref linkend="sql-dropdatabase"> to remove a database.
</para>
<para>
- The program <xref linkend="APP-CREATEDB"> is a
+ The program <xref linkend="app-createdb"> is a
wrapper program around this command, provided for convenience.
</para>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATEDOMAIN">
+<refentry id="sql-createdomain">
<indexterm zone="sql-createdomain">
<primary>CREATE DOMAIN</primary>
</indexterm>
</programlisting></para>
</refsect1>
- <refsect1 id="SQL-CREATEDOMAIN-compatibility">
+ <refsect1 id="sql-createdomain-compatibility">
<title>Compatibility</title>
<para>
</para>
</refsect1>
- <refsect1 id="SQL-CREATEDOMAIN-see-also">
+ <refsect1 id="sql-createdomain-see-also">
<title>See Also</title>
<simplelist type="inline">
PostgreSQL documentation
-->
-<refentry id="SQL-CREATEEVENTTRIGGER">
+<refentry id="sql-createeventtrigger">
<indexterm zone="sql-createeventtrigger">
<primary>CREATE EVENT TRIGGER</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATEEXTENSION">
+<refentry id="sql-createextension">
<indexterm zone="sql-createextension">
<primary>CREATE EXTENSION</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATEFOREIGNDATAWRAPPER">
+<refentry id="sql-createforeigndatawrapper">
<indexterm zone="sql-createforeigndatawrapper">
<primary>CREATE FOREIGN DATA WRAPPER</primary>
</indexterm>
<!-- doc/src/sgml/ref/create_foreign_table.sgml -->
-<refentry id="SQL-CREATEFOREIGNTABLE">
+<refentry id="sql-createforeigntable">
<indexterm zone="sql-createforeigntable">
<primary>CREATE FOREIGN TABLE</primary>
</indexterm>
</synopsis>
</refsynopsisdiv>
- <refsect1 id="SQL-CREATEFOREIGNTABLE-description">
+ <refsect1 id="sql-createforeigntable-description">
<title>Description</title>
<para>
<para>
The name of an existing foreign server to use for the foreign table.
For details on defining a server, see <xref
- linkend="SQL-CREATESERVER">.
+ linkend="sql-createserver">.
</para>
</listitem>
</varlistentry>
</para>
</refsect1>
- <refsect1 id="SQL-CREATEFOREIGNTABLE-examples">
+ <refsect1 id="sql-createforeigntable-examples">
<title>Examples</title>
<para>
</refsect1>
- <refsect1 id="SQL-CREATEFOREIGNTABLE-compatibility">
- <title id="SQL-CREATEFOREIGNTABLE-compatibility-title">Compatibility</title>
+ <refsect1 id="sql-createforeigntable-compatibility">
+ <title id="sql-createforeigntable-compatibility-title">Compatibility</title>
<para>
The <command>CREATE FOREIGN TABLE</command> command largely conforms to the
doc/src/sgml/ref/create_function.sgml
-->
-<refentry id="SQL-CREATEFUNCTION">
+<refentry id="sql-createfunction">
<indexterm zone="sql-createfunction">
<primary>CREATE FUNCTION</primary>
</indexterm>
the SQL function. The string <replaceable
class="parameter">obj_file</replaceable> is the name of the shared
library file containing the compiled C function, and is interpreted
- as for the <xref linkend="SQL-LOAD"> command. The string
+ as for the <xref linkend="sql-load"> command. The string
<replaceable class="parameter">link_symbol</replaceable> is the
function's link symbol, that is, the name of the function in the C
language source code. If the link symbol is omitted, it is assumed
PostgreSQL documentation
-->
-<refentry id="SQL-CREATEGROUP">
+<refentry id="sql-creategroup">
<indexterm zone="sql-creategroup">
<primary>CREATE GROUP</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATEINDEX">
+<refentry id="sql-createindex">
<indexterm zone="sql-createindex">
<primary>CREATE INDEX</primary>
</indexterm>
updates, or deletes on the table; whereas a standard index build
locks out writes (but not reads) on the table until it's done.
There are several caveats to be aware of when using this option
- — see <xref linkend="SQL-CREATEINDEX-CONCURRENTLY"
- endterm="SQL-CREATEINDEX-CONCURRENTLY-title">.
+ — see <xref linkend="sql-createindex-concurrently"
+ endterm="sql-createindex-concurrently-title">.
</para>
</listitem>
</varlistentry>
</variablelist>
- <refsect2 id="SQL-CREATEINDEX-storage-parameters">
- <title id="SQL-CREATEINDEX-storage-parameters-title">Index Storage Parameters</title>
+ <refsect2 id="sql-createindex-storage-parameters">
+ <title id="sql-createindex-storage-parameters-title">Index Storage Parameters</title>
<para>
The optional <literal>WITH</literal> clause specifies <firstterm>storage
</variablelist>
</refsect2>
- <refsect2 id="SQL-CREATEINDEX-CONCURRENTLY">
- <title id="SQL-CREATEINDEX-CONCURRENTLY-title">Building Indexes Concurrently</title>
+ <refsect2 id="sql-createindex-concurrently">
+ <title id="sql-createindex-concurrently-title">Building Indexes Concurrently</title>
- <indexterm zone="SQL-CREATEINDEX-CONCURRENTLY">
+ <indexterm zone="sql-createindex-concurrently">
<primary>index</primary>
<secondary>building concurrently</secondary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATELANGUAGE">
+<refentry id="sql-createlanguage">
<indexterm zone="sql-createlanguage">
<primary>CREATE LANGUAGE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATEMATERIALIZEDVIEW">
+<refentry id="sql-creatematerializedview">
<indexterm zone="sql-creatematerializedview">
<primary>CREATE MATERIALIZED VIEW</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATEOPCLASS">
+<refentry id="sql-createopclass">
<indexterm zone="sql-createopclass">
<primary>CREATE OPERATOR CLASS</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATEOPERATOR">
+<refentry id="sql-createoperator">
<indexterm zone="sql-createoperator">
<primary>CREATE OPERATOR</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATEOPFAMILY">
+<refentry id="sql-createopfamily">
<indexterm zone="sql-createopfamily">
<primary>CREATE OPERATOR FAMILY</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATEPOLICY">
+<refentry id="sql-createpolicy">
<indexterm zone="sql-createpolicy">
<primary>CREATE POLICY</primary>
</indexterm>
<variablelist>
- <varlistentry id="SQL-CREATEPOLICY-ALL">
+ <varlistentry id="sql-createpolicy-all">
<term><literal>ALL</literal></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="SQL-CREATEPOLICY-SELECT">
+ <varlistentry id="sql-createpolicy-select">
<term><literal>SELECT</literal></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="SQL-CREATEPOLICY-INSERT">
+ <varlistentry id="sql-createpolicy-insert">
<term><literal>INSERT</literal></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="SQL-CREATEPOLICY-UPDATE">
+ <varlistentry id="sql-createpolicy-update">
<term><literal>UPDATE</literal></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="SQL-CREATEPOLICY-DELETE">
+ <varlistentry id="sql-createpolicy-delete">
<term><literal>DELETE</literal></term>
<listitem>
<para>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATEPUBLICATION">
+<refentry id="sql-createpublication">
<indexterm zone="sql-createpublication">
<primary>CREATE PUBLICATION</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATEROLE">
+<refentry id="sql-createrole">
<indexterm zone="sql-createrole">
<primary>CREATE ROLE</primary>
</indexterm>
<title>Notes</title>
<para>
- Use <xref linkend="SQL-ALTERROLE"> to
- change the attributes of a role, and <xref linkend="SQL-DROPROLE">
+ Use <xref linkend="sql-alterrole"> to
+ change the attributes of a role, and <xref linkend="sql-droprole">
to remove a role. All the attributes
specified by <command>CREATE ROLE</command> can be modified by later
<command>ALTER ROLE</command> commands.
<para>
The preferred way to add and remove members of roles that are being
used as groups is to use
- <xref linkend="SQL-GRANT"> and
- <xref linkend="SQL-REVOKE">.
+ <xref linkend="sql-grant"> and
+ <xref linkend="sql-revoke">.
</para>
<para>
a member of a role with <literal>CREATEDB</literal> privilege does not immediately
grant the ability to create databases, even if <literal>INHERIT</literal> is set;
it would be necessary to become that role via
- <xref linkend="SQL-SET-ROLE"> before
+ <xref linkend="sql-set-role"> before
creating a database.
</para>
<para>
<productname>PostgreSQL</productname> includes a program <xref
- linkend="APP-CREATEUSER"> that has
+ linkend="app-createuser"> that has
the same functionality as <command>CREATE ROLE</command> (in fact,
it calls this command) but can be run from the command shell.
</para>
with this command. The password will be transmitted to the server
in cleartext, and it might also be logged in the client's command
history or the server log. The command <xref
- linkend="APP-CREATEUSER">, however, transmits
+ linkend="app-createuser">, however, transmits
the password encrypted. Also, <xref linkend="app-psql">
contains a command
<command>\password</command> that can be used to safely change the
PostgreSQL documentation
-->
-<refentry id="SQL-CREATERULE">
+<refentry id="sql-createrule">
<indexterm zone="sql-createrule">
<primary>CREATE RULE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATESCHEMA">
+<refentry id="sql-createschema">
<indexterm zone="sql-createschema">
<primary>CREATE SCHEMA</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATESEQUENCE">
+<refentry id="sql-createsequence">
<indexterm zone="sql-createsequence">
<primary>CREATE SEQUENCE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATESERVER">
+<refentry id="sql-createserver">
<indexterm zone="sql-createserver">
<primary>CREATE SERVER</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATESTATISTICS">
+<refentry id="sql-createstatistics">
<indexterm zone="sql-createstatistics">
<primary>CREATE STATISTICS</primary>
</indexterm>
</refsynopsisdiv>
- <refsect1 id="SQL-CREATESTATISTICS-description">
+ <refsect1 id="sql-createstatistics-description">
<title>Description</title>
<para>
</para>
</refsect1>
- <refsect1 id="SQL-CREATESTATISTICS-examples">
+ <refsect1 id="sql-createstatistics-examples">
<title>Examples</title>
<para>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATESUBSCRIPTION">
+<refentry id="sql-createsubscription">
<indexterm zone="sql-createsubscription">
<primary>CREATE SUBSCRIPTION</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATETABLE">
+<refentry id="sql-createtable">
<indexterm zone="sql-createtable">
<primary>CREATE TABLE</primary>
</indexterm>
</refsynopsisdiv>
- <refsect1 id="SQL-CREATETABLE-description">
+ <refsect1 id="sql-createtable-description">
<title>Description</title>
<para>
<variablelist>
- <varlistentry id="SQL-CREATETABLE-TEMPORARY">
+ <varlistentry id="sql-createtable-temporary">
<term><literal>TEMPORARY</literal> or <literal>TEMP</literal></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="SQL-CREATETABLE-UNLOGGED">
+ <varlistentry id="sql-createtable-unlogged">
<term><literal>UNLOGGED</literal></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="SQL-CREATETABLE-PARTITION">
+ <varlistentry id="sql-createtable-partition">
<term><literal>PARTITION OF <replaceable class="parameter">parent_table</replaceable> { FOR VALUES <replaceable class="parameter">partition_bound_spec</replaceable> | DEFAULT }</literal></term>
<listitem>
<para>
</listitem>
</varlistentry>
- <varlistentry id="SQL-CREATETABLE-EXCLUDE">
+ <varlistentry id="sql-createtable-exclude">
<term><literal>EXCLUDE [ USING <replaceable class="parameter">index_method</replaceable> ] ( <replaceable class="parameter">exclude_element</replaceable> WITH <replaceable class="parameter">operator</replaceable> [, ... ] ) <replaceable class="parameter">index_parameters</replaceable> [ WHERE ( <replaceable class="parameter">predicate</replaceable> ) ]</literal></term>
<listitem>
<para>
</variablelist>
- <refsect2 id="SQL-CREATETABLE-storage-parameters">
- <title id="SQL-CREATETABLE-storage-parameters-title">Storage Parameters</title>
+ <refsect2 id="sql-createtable-storage-parameters">
+ <title id="sql-createtable-storage-parameters-title">Storage Parameters</title>
<indexterm zone="sql-createtable-storage-parameters">
<primary>storage parameters</primary>
for tables, and for indexes associated with a <literal>UNIQUE</literal>,
<literal>PRIMARY KEY</literal>, or <literal>EXCLUDE</literal> constraint.
Storage parameters for
- indexes are documented in <xref linkend="SQL-CREATEINDEX">.
+ indexes are documented in <xref linkend="sql-createindex">.
The storage parameters currently
available for tables are listed below. For many of these parameters, as
shown, there is an additional parameter with the same name prefixed with
</refsect2>
</refsect1>
- <refsect1 id="SQL-CREATETABLE-notes">
+ <refsect1 id="sql-createtable-notes">
<title>Notes</title>
<para>
</refsect1>
- <refsect1 id="SQL-CREATETABLE-examples">
+ <refsect1 id="sql-createtable-examples">
<title>Examples</title>
<para>
</programlisting></para>
</refsect1>
- <refsect1 id="SQL-CREATETABLE-compatibility">
- <title id="SQL-CREATETABLE-compatibility-title">Compatibility</title>
+ <refsect1 id="sql-createtable-compatibility">
+ <title id="sql-createtable-compatibility-title">Compatibility</title>
<para>
The <command>CREATE TABLE</command> command conforms to the
PostgreSQL documentation
-->
-<refentry id="SQL-CREATETABLEAS">
+<refentry id="sql-createtableas">
<indexterm zone="sql-createtableas">
<primary>CREATE TABLE AS</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATETABLESPACE">
+<refentry id="sql-createtablespace">
<indexterm zone="sql-createtablespace">
<primary>CREATE TABLESPACE</primary>
</indexterm>
<!-- doc/src/sgml/ref/create_transform.sgml -->
-<refentry id="SQL-CREATETRANSFORM">
+<refentry id="sql-createtransform">
<indexterm zone="sql-createtransform">
<primary>CREATE TRANSFORM</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATETRIGGER">
+<refentry id="sql-createtrigger">
<indexterm zone="sql-createtrigger">
<primary>CREATE TRIGGER</primary>
</indexterm>
When the <literal>CONSTRAINT</literal> option is specified, this command creates a
<firstterm>constraint trigger</firstterm>. This is the same as a regular trigger
except that the timing of the trigger firing can be adjusted using
- <xref linkend="SQL-SET-CONSTRAINTS">.
+ <xref linkend="sql-set-constraints">.
Constraint triggers must be <literal>AFTER ROW</literal> triggers on plain
tables (not foreign tables). They
can be fired either at the end of the statement causing the triggering
<listitem>
<para>
The default timing of the trigger.
- See the <xref linkend="SQL-CREATETABLE"> documentation for details of
+ See the <xref linkend="sql-createtable"> documentation for details of
these constraint options. This can only be specified for constraint
triggers.
</para>
</variablelist>
</refsect1>
- <refsect1 id="SQL-CREATETRIGGER-notes">
+ <refsect1 id="sql-createtrigger-notes">
<title>Notes</title>
<para>
</para>
</refsect1>
- <refsect1 id="SQL-CREATETRIGGER-examples">
+ <refsect1 id="sql-createtrigger-examples">
<title>Examples</title>
<para>
</para>
</refsect1>
- <refsect1 id="SQL-CREATETRIGGER-compatibility">
+ <refsect1 id="sql-createtrigger-compatibility">
<title>Compatibility</title>
<!--
PostgreSQL documentation
-->
-<refentry id="SQL-CREATETSCONFIG">
+<refentry id="sql-createtsconfig">
<indexterm zone="sql-createtsconfig">
<primary>CREATE TEXT SEARCH CONFIGURATION</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATETSDICTIONARY">
+<refentry id="sql-createtsdictionary">
<indexterm zone="sql-createtsdictionary">
<primary>CREATE TEXT SEARCH DICTIONARY</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATETSPARSER">
+<refentry id="sql-createtsparser">
<indexterm zone="sql-createtsparser">
<primary>CREATE TEXT SEARCH PARSER</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATETSTEMPLATE">
+<refentry id="sql-createtstemplate">
<indexterm zone="sql-createtstemplate">
<primary>CREATE TEXT SEARCH TEMPLATE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATETYPE">
+<refentry id="sql-createtype">
<indexterm zone="sql-createtype">
<primary>CREATE TYPE</primary>
</indexterm>
</para>
</refsect2>
- <refsect2 id="SQL-CREATETYPE-enum">
+ <refsect2 id="sql-createtype-enum">
<title>Enumerated Types</title>
<para>
</para>
</refsect2>
- <refsect2 id="SQL-CREATETYPE-RANGE">
+ <refsect2 id="sql-createtype-range">
<title>Range Types</title>
<para>
</variablelist>
</refsect1>
- <refsect1 id="SQL-CREATETYPE-notes">
+ <refsect1 id="sql-createtype-notes">
<title>Notes</title>
<para>
</para>
</refsect1>
- <refsect1 id="SQL-CREATETYPE-compatibility">
+ <refsect1 id="sql-createtype-compatibility">
<title>Compatibility</title>
<para>
</para>
</refsect1>
- <refsect1 id="SQL-CREATETYPE-see-also">
+ <refsect1 id="sql-createtype-see-also">
<title>See Also</title>
<simplelist type="inline">
PostgreSQL documentation
-->
-<refentry id="SQL-CREATEUSER">
+<refentry id="sql-createuser">
<indexterm zone="sql-createuser">
<primary>CREATE USER</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATEUSERMAPPING">
+<refentry id="sql-createusermapping">
<indexterm zone="sql-createusermapping">
<primary>CREATE USER MAPPING</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-CREATEVIEW">
+<refentry id="sql-createview">
<indexterm zone="sql-createview">
<primary>CREATE VIEW</primary>
</indexterm>
<varlistentry>
<term><literal>WITH [ CASCADED | LOCAL ] CHECK OPTION</literal>
- <indexterm zone="SQL-CREATEVIEW">
+ <indexterm zone="sql-createview">
<primary>CHECK OPTION</primary>
</indexterm>
- <indexterm zone="SQL-CREATEVIEW">
+ <indexterm zone="sql-createview">
<primary>WITH CHECK OPTION</primary>
</indexterm>
</term>
to replace it (this includes being a member of the owning role).
</para>
- <refsect2 id="SQL-CREATEVIEW-updatable-views">
- <title id="SQL-CREATEVIEW-updatable-views-title">Updatable Views</title>
+ <refsect2 id="sql-createview-updatable-views">
+ <title id="sql-createview-updatable-views-title">Updatable Views</title>
<indexterm zone="sql-createview-updatable-views">
<primary>updatable views</primary>
PostgreSQL documentation
-->
-<refentry id="APP-CREATEDB">
+<refentry id="app-createdb">
<indexterm zone="app-createdb">
<primary>createdb</primary>
</indexterm>
</refsynopsisdiv>
- <refsect1 id="R1-APP-CREATEDB-1">
+ <refsect1 id="r1-app-createdb-1">
<title>
Description
</title>
<para>
<application>createdb</application> is a wrapper around the
- <acronym>SQL</acronym> command <xref linkend="SQL-CREATEDATABASE">.
+ <acronym>SQL</acronym> command <xref linkend="sql-createdatabase">.
There is no effective difference between creating databases via
this utility and via other methods for accessing the server.
</para>
The options <option>-D</option>, <option>-l</option>, <option>-E</option>,
<option>-O</option>, and
<option>-T</option> correspond to options of the underlying
- SQL command <xref linkend="SQL-CREATEDATABASE">; see there for more information
+ SQL command <xref linkend="sql-createdatabase">; see there for more information
about them.
</para>
<title>Diagnostics</title>
<para>
- In case of difficulty, see <xref linkend="SQL-CREATEDATABASE">
- and <xref linkend="APP-PSQL"> for
+ In case of difficulty, see <xref linkend="sql-createdatabase">
+ and <xref linkend="app-psql"> for
discussions of potential problems and error messages.
The database server must be running at the
targeted host. Also, any default connection settings and environment
PostgreSQL documentation
-->
-<refentry id="APP-CREATEUSER">
+<refentry id="app-createuser">
<indexterm zone="app-createuser">
<primary>createuser</primary>
</indexterm>
<para>
<application>createuser</application> is a wrapper around the
- <acronym>SQL</acronym> command <xref linkend="SQL-CREATEROLE">.
+ <acronym>SQL</acronym> command <xref linkend="sql-createrole">.
There is no effective difference between creating users via
this utility and via other methods for accessing the server.
</para>
<title>Diagnostics</title>
<para>
- In case of difficulty, see <xref linkend="SQL-CREATEROLE">
- and <xref linkend="APP-PSQL"> for
+ In case of difficulty, see <xref linkend="sql-createrole">
+ and <xref linkend="app-psql"> for
discussions of potential problems and error messages.
The database server must be running at the
targeted host. Also, any default connection settings and environment
PostgreSQL documentation
-->
-<refentry id="SQL-DEALLOCATE">
+<refentry id="sql-deallocate">
<indexterm zone="sql-deallocate">
<primary>DEALLOCATE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DECLARE">
+<refentry id="sql-declare">
<indexterm zone="sql-declare">
<primary>DECLARE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DELETE">
+<refentry id="sql-delete">
<indexterm zone="sql-delete">
<primary>DELETE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DISCARD">
+<refentry id="sql-discard">
<indexterm zone="sql-discard">
<primary>DISCARD</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DO">
+<refentry id="sql-do">
<indexterm zone="sql-do">
<primary>DO</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPAGGREGATE">
+<refentry id="sql-dropaggregate">
<indexterm zone="sql-dropaggregate">
<primary>DROP AGGREGATE</primary>
</indexterm>
<!-- doc/src/sgml/ref/drop_cast.sgml -->
-<refentry id="SQL-DROPCAST">
+<refentry id="sql-dropcast">
<indexterm zone="sql-dropcast">
<primary>DROP CAST</primary>
</indexterm>
<!-- doc/src/sgml/ref/drop_collation.sgml -->
-<refentry id="SQL-DROPCOLLATION">
+<refentry id="sql-dropcollation">
<indexterm zone="sql-dropcollation">
<primary>DROP COLLATION</primary>
</indexterm>
<!-- doc/src/sgml/ref/drop_conversion.sgml -->
-<refentry id="SQL-DROPCONVERSION">
+<refentry id="sql-dropconversion">
<indexterm zone="sql-dropconversion">
<primary>DROP CONVERSION</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPDATABASE">
+<refentry id="sql-dropdatabase">
<indexterm zone="sql-dropdatabase">
<primary>DROP DATABASE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPDOMAIN">
+<refentry id="sql-dropdomain">
<indexterm zone="sql-dropdomain">
<primary>DROP DOMAIN</primary>
</indexterm>
</variablelist>
</refsect1>
- <refsect1 id="SQL-DROPDOMAIN-examples">
+ <refsect1 id="sql-dropdomain-examples">
<title>Examples</title>
<para>
</programlisting></para>
</refsect1>
- <refsect1 id="SQL-DROPDOMAIN-compatibility">
+ <refsect1 id="sql-dropdomain-compatibility">
<title>Compatibility</title>
<para>
</para>
</refsect1>
- <refsect1 id="SQL-DROPDOMAIN-see-also">
+ <refsect1 id="sql-dropdomain-see-also">
<title>See Also</title>
<simplelist type="inline">
PostgreSQL documentation
-->
-<refentry id="SQL-DROPEVENTTRIGGER">
+<refentry id="sql-dropeventtrigger">
<indexterm zone="sql-dropeventtrigger">
<primary>DROP EVENT TRIGGER</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPEXTENSION">
+<refentry id="sql-dropextension">
<indexterm zone="sql-dropextension">
<primary>DROP EXTENSION</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPFOREIGNDATAWRAPPER">
+<refentry id="sql-dropforeigndatawrapper">
<indexterm zone="sql-dropforeigndatawrapper">
<primary>DROP FOREIGN DATA WRAPPER</primary>
</indexterm>
<!-- doc/src/sgml/ref/drop_foreign_table.sgml -->
-<refentry id="SQL-DROPFOREIGNTABLE">
+<refentry id="sql-dropforeigntable">
<indexterm zone="sql-dropforeigntable">
<primary>DROP FOREIGN TABLE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPFUNCTION">
+<refentry id="sql-dropfunction">
<indexterm zone="sql-dropfunction">
<primary>DROP FUNCTION</primary>
</indexterm>
</variablelist>
</refsect1>
- <refsect1 id="SQL-DROPFUNCTION-examples">
+ <refsect1 id="sql-dropfunction-examples">
<title>Examples</title>
<para>
</para>
</refsect1>
- <refsect1 id="SQL-DROPFUNCTION-compatibility">
+ <refsect1 id="sql-dropfunction-compatibility">
<title>Compatibility</title>
<para>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPGROUP">
+<refentry id="sql-dropgroup">
<indexterm zone="sql-dropgroup">
<primary>DROP GROUP</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPINDEX">
+<refentry id="sql-dropindex">
<indexterm zone="sql-dropindex">
<primary>DROP INDEX</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPLANGUAGE">
+<refentry id="sql-droplanguage">
<indexterm zone="sql-droplanguage">
<primary>DROP LANGUAGE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPMATERIALIZEDVIEW">
+<refentry id="sql-dropmaterializedview">
<indexterm zone="sql-dropmaterializedview">
<primary>DROP MATERIALIZED VIEW</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPOPCLASS">
+<refentry id="sql-dropopclass">
<indexterm zone="sql-dropopclass">
<primary>DROP OPERATOR CLASS</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPOPERATOR">
+<refentry id="sql-dropoperator">
<indexterm zone="sql-dropoperator">
<primary>DROP OPERATOR</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPOPFAMILY">
+<refentry id="sql-dropopfamily">
<indexterm zone="sql-dropopfamily">
<primary>DROP OPERATOR FAMILY</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROP-OWNED">
+<refentry id="sql-drop-owned">
<indexterm zone="sql-drop-owned">
<primary>DROP OWNED</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPPOLICY">
+<refentry id="sql-droppolicy">
<indexterm zone="sql-droppolicy">
<primary>DROP POLICY</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPPUBLICATION">
+<refentry id="sql-droppublication">
<indexterm zone="sql-droppublication">
<primary>DROP PUBLICATION</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPROLE">
+<refentry id="sql-droprole">
<indexterm zone="sql-droprole">
<primary>DROP ROLE</primary>
</indexterm>
<para>
<productname>PostgreSQL</productname> includes a program <xref
- linkend="APP-DROPUSER"> that has the
+ linkend="app-dropuser"> that has the
same functionality as this command (in fact, it calls this command)
but can be run from the command shell.
</para>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPRULE">
+<refentry id="sql-droprule">
<indexterm zone="sql-droprule">
<primary>DROP RULE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPSCHEMA">
+<refentry id="sql-dropschema">
<indexterm zone="sql-dropschema">
<primary>DROP SCHEMA</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPSEQUENCE">
+<refentry id="sql-dropsequence">
<indexterm zone="sql-dropsequence">
<primary>DROP SEQUENCE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPSERVER">
+<refentry id="sql-dropserver">
<indexterm zone="sql-dropserver">
<primary>DROP SERVER</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPSTATISTICS">
+<refentry id="sql-dropstatistics">
<indexterm zone="sql-dropstatistics">
<primary>DROP STATISTICS</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPSUBSCRIPTION">
+<refentry id="sql-dropsubscription">
<indexterm zone="sql-dropsubscription">
<primary>DROP SUBSCRIPTION</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPTABLE">
+<refentry id="sql-droptable">
<indexterm zone="sql-droptable">
<primary>DROP TABLE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPTABLESPACE">
+<refentry id="sql-droptablespace">
<indexterm zone="sql-droptablespace">
<primary>DROP TABLESPACE</primary>
</indexterm>
<!-- doc/src/sgml/ref/drop_transform.sgml -->
-<refentry id="SQL-DROPTRANSFORM">
+<refentry id="sql-droptransform">
<indexterm zone="sql-droptransform">
<primary>DROP TRANSFORM</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPTRIGGER">
+<refentry id="sql-droptrigger">
<indexterm zone="sql-droptrigger">
<primary>DROP TRIGGER</primary>
</indexterm>
</variablelist>
</refsect1>
- <refsect1 id="SQL-DROPTRIGGER-examples">
+ <refsect1 id="sql-droptrigger-examples">
<title>Examples</title>
<para>
</programlisting></para>
</refsect1>
- <refsect1 id="SQL-DROPTRIGGER-compatibility">
+ <refsect1 id="sql-droptrigger-compatibility">
<title>Compatibility</title>
<para>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPTSCONFIG">
+<refentry id="sql-droptsconfig">
<indexterm zone="sql-droptsconfig">
<primary>DROP TEXT SEARCH CONFIGURATION</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPTSDICTIONARY">
+<refentry id="sql-droptsdictionary">
<indexterm zone="sql-droptsdictionary">
<primary>DROP TEXT SEARCH DICTIONARY</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPTSPARSER">
+<refentry id="sql-droptsparser">
<indexterm zone="sql-droptsparser">
<primary>DROP TEXT SEARCH PARSER</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPTSTEMPLATE">
+<refentry id="sql-droptstemplate">
<indexterm zone="sql-droptstemplate">
<primary>DROP TEXT SEARCH TEMPLATE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPTYPE">
+<refentry id="sql-droptype">
<indexterm zone="sql-droptype">
<primary>DROP TYPE</primary>
</indexterm>
</variablelist>
</refsect1>
- <refsect1 id="SQL-DROPTYPE-examples">
+ <refsect1 id="sql-droptype-examples">
<title>Examples</title>
<para>
</programlisting></para>
</refsect1>
- <refsect1 id="SQL-DROPTYPE-compatibility">
+ <refsect1 id="sql-droptype-compatibility">
<title>Compatibility</title>
<para>
</para>
</refsect1>
- <refsect1 id="SQL-DROPTYPE-see-also">
+ <refsect1 id="sql-droptype-see-also">
<title>See Also</title>
<simplelist type="inline">
PostgreSQL documentation
-->
-<refentry id="SQL-DROPUSER">
+<refentry id="sql-dropuser">
<indexterm zone="sql-dropuser">
<primary>DROP USER</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPUSERMAPPING">
+<refentry id="sql-dropusermapping">
<indexterm zone="sql-dropusermapping">
<primary>DROP USER MAPPING</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-DROPVIEW">
+<refentry id="sql-dropview">
<indexterm zone="sql-dropview">
<primary>DROP VIEW</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="APP-DROPDB">
+<refentry id="app-dropdb">
<indexterm zone="app-dropdb">
<primary>dropdb</primary>
</indexterm>
<para>
<application>dropdb</application> is a wrapper around the
- <acronym>SQL</acronym> command <xref linkend="SQL-DROPDATABASE">.
+ <acronym>SQL</acronym> command <xref linkend="sql-dropdatabase">.
There is no effective difference between dropping databases via
this utility and via other methods for accessing the server.
</para>
<title>Diagnostics</title>
<para>
- In case of difficulty, see <xref linkend="SQL-DROPDATABASE">
- and <xref linkend="APP-PSQL"> for
+ In case of difficulty, see <xref linkend="sql-dropdatabase">
+ and <xref linkend="app-psql"> for
discussions of potential problems and error messages.
The database server must be running at the
targeted host. Also, any default connection settings and environment
PostgreSQL documentation
-->
-<refentry id="APP-DROPUSER">
+<refentry id="app-dropuser">
<indexterm zone="app-dropuser">
<primary>dropuser</primary>
</indexterm>
<para>
<application>dropuser</application> is a wrapper around the
- <acronym>SQL</acronym> command <xref linkend="SQL-DROPROLE">.
+ <acronym>SQL</acronym> command <xref linkend="sql-droprole">.
There is no effective difference between dropping users via
this utility and via other methods for accessing the server.
</para>
<title>Diagnostics</title>
<para>
- In case of difficulty, see <xref linkend="SQL-DROPROLE">
- and <xref linkend="APP-PSQL"> for
+ In case of difficulty, see <xref linkend="sql-droprole">
+ and <xref linkend="app-psql"> for
discussions of potential problems and error messages.
The database server must be running at the
targeted host. Also, any default connection settings and environment
PostgreSQL documentation
-->
-<refentry id="APP-ECPG">
+<refentry id="app-ecpg">
<indexterm zone="app-ecpg">
<primary>ecpg</primary>
</indexterm>
</refsynopsisdiv>
- <refsect1 id="APP-ECPG-description">
+ <refsect1 id="app-ecpg-description">
<title>Description</title>
<para>
PostgreSQL documentation
-->
-<refentry id="SQL-END">
+<refentry id="sql-end">
<indexterm zone="sql-end">
<primary>END</primary>
</indexterm>
<title>Notes</title>
<para>
- Use <xref linkend="SQL-ROLLBACK"> to
+ Use <xref linkend="sql-rollback"> to
abort a transaction.
</para>
PostgreSQL documentation
-->
-<refentry id="SQL-EXECUTE">
+<refentry id="sql-execute">
<indexterm zone="sql-execute">
<primary>EXECUTE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-EXPLAIN">
+<refentry id="sql-explain">
<indexterm zone="sql-explain">
<primary>EXPLAIN</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-FETCH">
+<refentry id="sql-fetch">
<indexterm zone="sql-fetch">
<primary>FETCH</primary>
PostgreSQL documentation
-->
-<refentry id="SQL-GRANT">
+<refentry id="sql-grant">
<indexterm zone="sql-grant">
<primary>GRANT</primary>
</indexterm>
</refsect1>
- <refsect1 id="SQL-GRANT-notes">
+ <refsect1 id="sql-grant-notes">
<title>Notes</title>
<para>
PostgreSQL documentation
-->
-<refentry id="SQL-IMPORTFOREIGNSCHEMA">
+<refentry id="sql-importforeignschema">
<indexterm zone="sql-importforeignschema">
<primary>IMPORT FOREIGN SCHEMA</primary>
</indexterm>
</synopsis>
</refsynopsisdiv>
- <refsect1 id="SQL-IMPORTFOREIGNSCHEMA-description">
+ <refsect1 id="sql-importforeignschema-description">
<title>Description</title>
<para>
</variablelist>
</refsect1>
- <refsect1 id="SQL-IMPORTFOREIGNSCHEMA-examples">
+ <refsect1 id="sql-importforeignschema-examples">
<title>Examples</title>
<para>
</programlisting></para>
</refsect1>
- <refsect1 id="SQL-IMPORTFOREIGNSCHEMA-compatibility">
+ <refsect1 id="sql-importforeignschema-compatibility">
<title>Compatibility</title>
<para>
PostgreSQL documentation
-->
-<refentry id="APP-INITDB">
+<refentry id="app-initdb">
<indexterm zone="app-initdb">
<primary>initdb</primary>
</indexterm>
</cmdsynopsis>
</refsynopsisdiv>
- <refsect1 id="R1-APP-INITDB-1">
+ <refsect1 id="r1-app-initdb-1">
<title>
Description
</title>
PostgreSQL documentation
-->
-<refentry id="SQL-INSERT">
+<refentry id="sql-insert">
<indexterm zone="sql-insert">
<primary>INSERT</primary>
</indexterm>
<refsect1>
<title>Parameters</title>
- <refsect2 id="SQL-INSERTING-PARAMS">
+ <refsect2 id="sql-inserting-params">
<title id="sql-inserting-params-title">Inserting</title>
<para>
<refsect2 id="sql-on-conflict">
<title id="sql-on-conflict-title"><literal>ON CONFLICT</literal> Clause</title>
- <indexterm zone="SQL-INSERT">
+ <indexterm zone="sql-insert">
<primary>UPSERT</primary>
</indexterm>
- <indexterm zone="SQL-INSERT">
+ <indexterm zone="sql-insert">
<primary>ON CONFLICT</primary>
</indexterm>
<para>
PostgreSQL documentation
-->
-<refentry id="SQL-LISTEN">
+<refentry id="sql-listen">
<indexterm zone="sql-listen">
<primary>LISTEN</primary>
</indexterm>
doc/src/sgml/ref/load.sgml
-->
-<refentry id="SQL-LOAD">
+<refentry id="sql-load">
<indexterm zone="sql-load">
<primary>LOAD</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-LOCK">
+<refentry id="sql-lock">
<indexterm zone="sql-lock">
<primary>LOCK</primary>
</indexterm>
There is no <command>LOCK TABLE</command> in the SQL standard,
which instead uses <command>SET TRANSACTION</command> to specify
concurrency levels on transactions. <productname>PostgreSQL</productname> supports that too;
- see <xref linkend="SQL-SET-TRANSACTION"> for details.
+ see <xref linkend="sql-set-transaction"> for details.
</para>
<para>
PostgreSQL documentation
-->
-<refentry id="SQL-MOVE">
+<refentry id="sql-move">
<indexterm zone="sql-move">
<primary>MOVE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-NOTIFY">
+<refentry id="sql-notify">
<indexterm zone="sql-notify">
<primary>NOTIFY</primary>
</indexterm>
out of backup mode automatically. Backups are always taken of the entire
database cluster; it is not possible to back up individual databases or
database objects. For individual database backups, a tool such as
- <xref linkend="APP-PGDUMP"> must be used.
+ <xref linkend="app-pgdump"> must be used.
</para>
<para>
<title>See Also</title>
<simplelist type="inline">
- <member><xref linkend="APP-PGDUMP"></member>
+ <member><xref linkend="app-pgdump"></member>
</simplelist>
</refsect1>
PostgreSQL documentation
-->
-<refentry id="APP-PGCONTROLDATA">
+<refentry id="app-pgcontroldata">
<indexterm zone="app-pgcontroldata">
<primary>pg_controldata</primary>
</indexterm>
</cmdsynopsis>
</refsynopsisdiv>
- <refsect1 id="R1-APP-PGCONTROLDATA-1">
+ <refsect1 id="r1-app-pgcontroldata-1">
<title>Description</title>
<para>
<command>pg_controldata</command> prints information initialized during
</refsect1>
- <refsect1 id="R1-APP-PGCTL-2">
+ <refsect1 id="r1-app-pgctl-2">
<title>Examples</title>
- <refsect2 id="R2-APP-PGCTL-3">
+ <refsect2 id="r2-app-pgctl-3">
<title>Starting the Server</title>
<para>
</screen></para>
</refsect2>
- <refsect2 id="R2-APP-PGCTL-4">
+ <refsect2 id="r2-app-pgctl-4">
<title>Stopping the Server</title>
<para>
To stop the server, use:
</screen></para>
</refsect2>
- <refsect2 id="R2-APP-PGCTL-5">
+ <refsect2 id="r2-app-pgctl-5">
<title>Restarting the Server</title>
<para>
</screen></para>
</refsect2>
- <refsect2 id="R2-APP-PGCTL-6">
+ <refsect2 id="r2-app-pgctl-6">
<title>Showing the Server Status</title>
<para>
PostgreSQL documentation
-->
-<refentry id="APP-PGDUMP">
+<refentry id="app-pgdump">
<indexterm zone="app-pgdump">
<primary>pg_dump</primary>
</indexterm>
<replaceable class="parameter">schema</replaceable> parameter is
interpreted as a pattern according to the same rules used by
<application>psql</application>'s <literal>\d</literal> commands (see <xref
- linkend="APP-PSQL-patterns" endterm="APP-PSQL-patterns-title">),
+ linkend="app-psql-patterns" endterm="app-psql-patterns-title">),
so multiple schemas can also be selected by writing wildcard characters
in the pattern. When using wildcards, be careful to quote the pattern
if needed to prevent the shell from expanding the wildcards; see
<replaceable class="parameter">table</replaceable> parameter is
interpreted as a pattern according to the same rules used by
<application>psql</application>'s <literal>\d</literal> commands (see <xref
- linkend="APP-PSQL-patterns" endterm="APP-PSQL-patterns-title">),
+ linkend="app-psql-patterns" endterm="app-psql-patterns-title">),
so multiple tables can also be selected by writing wildcard characters
in the pattern. When using wildcards, be careful to quote the pattern
if needed to prevent the shell from expanding the wildcards; see
To specify an upper-case or mixed-case name in <option>-t</option> and related
switches, you need to double-quote the name; else it will be folded to
lower case (see <xref
- linkend="APP-PSQL-patterns" endterm="APP-PSQL-patterns-title">). But
+ linkend="app-psql-patterns" endterm="app-psql-patterns-title">). But
double quotes are special to the shell, so in turn they must be quoted.
Thus, to dump a single table with a mixed-case name, you need something
like
PostgreSQL documentation
-->
-<refentry id="APP-PG-DUMPALL">
+<refentry id="app-pg-dumpall">
<indexterm zone="app-pg-dumpall">
<primary>pg_dumpall</primary>
</indexterm>
<title>See Also</title>
<simplelist type="inline">
- <member><xref linkend="APP-PGBASEBACKUP"></member>
+ <member><xref linkend="app-pgbasebackup"></member>
</simplelist>
</refsect1>
<para>
The database to connect to. See the description of the actions for
what this means in detail. This can be a <application>libpq</application> connection string;
- see <xref linkend="LIBPQ-CONNSTRING"> for more information. Defaults
+ see <xref linkend="libpq-connstring"> for more information. Defaults
to user name.
</para>
</listitem>
PostgreSQL documentation
-->
-<refentry id="APP-PGRESETWAL">
+<refentry id="app-pgresetwal">
<indexterm zone="app-pgresetwal">
<primary>pg_resetwal</primary>
</indexterm>
</cmdsynopsis>
</refsynopsisdiv>
- <refsect1 id="R1-APP-PGRESETWAL-1">
+ <refsect1 id="r1-app-pgresetwal-1">
<title>Description</title>
<para>
<command>pg_resetwal</command> clears the write-ahead log (WAL) and
<!-- doc/src/sgml/ref/pg_restore.sgml -->
-<refentry id="APP-PGRESTORE">
+<refentry id="app-pgrestore">
<indexterm zone="app-pgrestore">
<primary>pg_restore</primary>
</indexterm>
</cmdsynopsis>
</refsynopsisdiv>
- <refsect1 id="R1-APP-PGWALDUMP-1">
+ <refsect1 id="r1-app-pgwaldump-1">
<title>Description</title>
<para>
<command>pg_waldump</command> displays the write-ahead log (WAL) and is mainly
PostgreSQL documentation
-->
-<refentry id="SQL-PREPARE">
+<refentry id="sql-prepare">
<indexterm zone="sql-prepare">
<primary>PREPARE</primary>
</indexterm>
</variablelist>
</refsect1>
- <refsect1 id="SQL-PREPARE-notes">
+ <refsect1 id="sql-prepare-notes">
<title>Notes</title>
<para>
PostgreSQL documentation
-->
-<refentry id="SQL-PREPARE-TRANSACTION">
+<refentry id="sql-prepare-transaction">
<indexterm zone="sql-prepare-transaction">
<primary>PREPARE TRANSACTION</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="APP-PSQL">
+<refentry id="app-psql">
<indexterm zone="app-psql">
<primary>psql</primary>
</indexterm>
</para>
</refsect1>
- <refsect1 id="R1-APP-PSQL-3">
+ <refsect1 id="r1-app-psql-3">
<title>Options</title>
<variablelist>
<refsect1>
<title>Usage</title>
- <refsect2 id="R2-APP-PSQL-connecting">
+ <refsect2 id="r2-app-psql-connecting">
<title>Connecting to a Database</title>
<para>
</para>
</refsect2>
- <refsect2 id="R2-APP-PSQL-4">
+ <refsect2 id="r2-app-psql-4">
<title>Entering SQL Commands</title>
<para>
<para>
Whenever a command is executed, <application>psql</application> also polls
for asynchronous notification events generated by
- <xref linkend="SQL-LISTEN"> and
- <xref linkend="SQL-NOTIFY">.
+ <xref linkend="sql-listen"> and
+ <xref linkend="sql-notify">.
</para>
<para>
</para>
</refsect2>
- <refsect2 id="APP-PSQL-meta-commands">
+ <refsect2 id="app-psql-meta-commands">
<title>Meta-Commands</title>
<para>
If an unquoted colon (<literal>:</literal>) followed by a
<application>psql</application> variable name appears within an argument, it is
replaced by the variable's value, as described in <xref
- linkend="APP-PSQL-interpolation" endterm="APP-PSQL-interpolation-title">.
+ linkend="app-psql-interpolation" endterm="app-psql-interpolation-title">.
The forms <literal>:'<replaceable>variable_name</replaceable>'</literal> and
<literal>:"<replaceable>variable_name</replaceable>"</literal> described there
work as well.
</listitem>
</varlistentry>
- <varlistentry id="APP-PSQL-meta-commands-copy">
+ <varlistentry id="app-psql-meta-commands-copy">
<term><literal>\copy { <replaceable class="parameter">table</replaceable> [ ( <replaceable class="parameter">column_list</replaceable> ) ] | ( <replaceable class="parameter">query</replaceable> ) }
{ <literal>from</literal> | <literal>to</literal> }
{ <replaceable class="parameter">'filename'</replaceable> | program <replaceable class="parameter">'command'</replaceable> | stdin | stdout | pstdin | pstdout }
<listitem>
<para>
Performs a frontend (client) copy. This is an operation that
- runs an <acronym>SQL</acronym> <xref linkend="SQL-COPY">
+ runs an <acronym>SQL</acronym> <xref linkend="sql-copy">
command, but instead of the server
reading or writing the specified file,
<application>psql</application> reads or writes the file and
</varlistentry>
- <varlistentry id="APP-PSQL-meta-commands-crosstabview">
+ <varlistentry id="app-psql-meta-commands-crosstabview">
<term><literal>\crosstabview [
<replaceable class="parameter">colV</replaceable>
[ <replaceable class="parameter">colH</replaceable>
<varlistentry>
- <term><literal>\d[S+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\d[S+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
also shown. For foreign tables, the associated foreign
server is shown as well.
(<quote>Matching the pattern</quote> is defined in
- <xref linkend="APP-PSQL-patterns" endterm="APP-PSQL-patterns-title">
+ <xref linkend="app-psql-patterns" endterm="app-psql-patterns-title">
below.)
</para>
more information is displayed: any comments associated with the
columns of the table are shown, as is the presence of OIDs in the
table, the view definition if the relation is a view, a non-default
- <link linkend="SQL-CREATETABLE-REPLICA-IDENTITY">replica
+ <link linkend="sql-createtable-replica-identity">replica
identity</link> setting.
</para>
</varlistentry>
<varlistentry>
- <term><literal>\da[S] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\da[S] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
</varlistentry>
<varlistentry>
- <term><literal>\dA[+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dA[+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
</varlistentry>
<varlistentry>
- <term><literal>\db[+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\db[+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
<varlistentry>
- <term><literal>\dc[S+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dc[S+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists conversions between character-set encodings.
<varlistentry>
- <term><literal>\dC[+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dC[+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists type casts.
<varlistentry>
- <term><literal>\dd[S] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dd[S] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Shows the descriptions of objects of type <literal>constraint</literal>,
<varlistentry>
- <term><literal>\dD[S+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dD[S+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists domains. If <replaceable
<varlistentry>
- <term><literal>\ddp [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\ddp [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists default access privilege settings. An entry is shown for
<varlistentry>
- <term><literal>\dE[S+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
- <term><literal>\di[S+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
- <term><literal>\dm[S+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
- <term><literal>\ds[S+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
- <term><literal>\dt[S+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
- <term><literal>\dv[S+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dE[S+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\di[S+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dm[S+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\ds[S+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dt[S+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dv[S+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
<varlistentry>
- <term><literal>\des[+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\des[+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists foreign servers (mnemonic: <quote>external
<varlistentry>
- <term><literal>\det[+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\det[+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists foreign tables (mnemonic: <quote>external tables</quote>).
<varlistentry>
- <term><literal>\deu[+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\deu[+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists user mappings (mnemonic: <quote>external
<varlistentry>
- <term><literal>\dew[+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dew[+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists foreign-data wrappers (mnemonic: <quote>external
<varlistentry>
- <term><literal>\df[antwS+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\df[antwS+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
</varlistentry>
<varlistentry>
- <term><literal>\dF[+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dF[+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists text search configurations.
</varlistentry>
<varlistentry>
- <term><literal>\dFd[+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dFd[+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists text search dictionaries.
</varlistentry>
<varlistentry>
- <term><literal>\dFp[+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dFp[+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists text search parsers.
</varlistentry>
<varlistentry>
- <term><literal>\dFt[+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dFt[+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists text search templates.
<varlistentry>
- <term><literal>\dg[S+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dg[S+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists database roles.
</varlistentry>
<varlistentry>
- <term><literal>\dL[S+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dL[S+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists procedural languages. If <replaceable
<varlistentry>
- <term><literal>\dn[S+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dn[S+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
<varlistentry>
- <term><literal>\do[S+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\do[S+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists operators with their operand and result types.
<varlistentry>
- <term><literal>\dO[S+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dO[S+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists collations.
<varlistentry>
- <term><literal>\dp [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dp [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists tables, views and sequences with their
</varlistentry>
<varlistentry>
- <term><literal>\drds [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">role-pattern</replaceable></link> [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">database-pattern</replaceable></link> ] ]</literal></term>
+ <term><literal>\drds [ <link linkend="app-psql-patterns"><replaceable class="parameter">role-pattern</replaceable></link> [ <link linkend="app-psql-patterns"><replaceable class="parameter">database-pattern</replaceable></link> ] ]</literal></term>
<listitem>
<para>
Lists defined configuration settings. These settings can be
</varlistentry>
<varlistentry>
- <term><literal>\dRp[+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dRp[+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists replication publications.
</varlistentry>
<varlistentry>
- <term><literal>\dRs[+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dRs[+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists replication subscriptions.
</varlistentry>
<varlistentry>
- <term><literal>\dT[S+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dT[S+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists data types.
</varlistentry>
<varlistentry>
- <term><literal>\du[S+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\du[S+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists database roles.
</varlistentry>
<varlistentry>
- <term><literal>\dx[+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dx[+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists installed extensions.
</varlistentry>
<varlistentry>
- <term><literal>\dy[+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\dy[+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists event triggers.
<para>
Sends the current query buffer to the server and stores the
query's output into <application>psql</application> variables (see <xref
- linkend="APP-PSQL-variables" endterm="APP-PSQL-variables-title">).
+ linkend="app-psql-variables" endterm="app-psql-variables-title">).
The query to be executed must return exactly one row. Each column of
the row is stored into a separate variable, named the same as the
column. For example:
<varlistentry>
- <term><literal>\l[+]</literal> or <literal>\list[+] [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\l[+]</literal> or <literal>\list[+] [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
List the databases in the server and show their names, owners,
<para>
Illustrations of how these different formats look can be seen in
- the <xref linkend="APP-PSQL-examples"
- endterm="APP-PSQL-examples-title"> section.
+ the <xref linkend="app-psql-examples"
+ endterm="app-psql-examples-title"> section.
</para>
<tip>
<para>
Valid variable names can contain letters, digits, and
underscores. See the section <xref
- linkend="APP-PSQL-variables"
- endterm="APP-PSQL-variables-title"> below for details.
+ linkend="app-psql-variables"
+ endterm="app-psql-variables-title"> below for details.
Variable names are case-sensitive.
</para>
Certain variables are special, in that they
control <application>psql</application>'s behavior or are
automatically set to reflect connection state. These variables are
- documented in <xref linkend="APP-PSQL-variables"
- endterm="APP-PSQL-variables-title">, below.
+ documented in <xref linkend="app-psql-variables"
+ endterm="app-psql-variables-title">, below.
</para>
<note>
<para>
This command is unrelated to the <acronym>SQL</acronym>
- command <xref linkend="SQL-SET">.
+ command <xref linkend="sql-set">.
</para>
</note>
</listitem>
Most variables that control <application>psql</application>'s behavior
cannot be unset; instead, an <literal>\unset</literal> command is interpreted
as setting them to their default values.
- See <xref linkend="APP-PSQL-variables"
- endterm="APP-PSQL-variables-title">, below.
+ See <xref linkend="app-psql-variables"
+ endterm="app-psql-variables-title">, below.
</para>
</listitem>
</varlistentry>
<varlistentry>
- <term><literal>\z [ <link linkend="APP-PSQL-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
+ <term><literal>\z [ <link linkend="app-psql-patterns"><replaceable class="parameter">pattern</replaceable></link> ]</literal></term>
<listitem>
<para>
Lists tables, views and sequences with their
</variablelist>
</para>
- <refsect3 id="APP-PSQL-patterns">
- <title id="APP-PSQL-patterns-title">Patterns</title>
+ <refsect3 id="app-psql-patterns">
+ <title id="app-psql-patterns-title">Patterns</title>
<indexterm>
<primary>patterns</primary>
<refsect2>
<title>Advanced Features</title>
- <refsect3 id="APP-PSQL-variables">
- <title id="APP-PSQL-variables-title">Variables</title>
+ <refsect3 id="app-psql-variables">
+ <title id="app-psql-variables-title">Variables</title>
<para>
<application>psql</application> provides variable substitution
bar
</programlisting>
This works in both regular SQL commands and meta-commands; there is
- more detail in <xref linkend="APP-PSQL-interpolation"
- endterm="APP-PSQL-interpolation-title">, below.
+ more detail in <xref linkend="app-psql-interpolation"
+ endterm="app-psql-interpolation-title">, below.
</para>
<para>
<para>
These specify what the prompts <application>psql</application>
issues should look like. See <xref
- linkend="APP-PSQL-prompting"
- endterm="APP-PSQL-prompting-title"> below.
+ linkend="app-psql-prompting"
+ endterm="app-psql-prompting-title"> below.
</para>
</listitem>
</varlistentry>
</refsect3>
- <refsect3 id="APP-PSQL-interpolation">
- <title id="APP-PSQL-interpolation-title"><acronym>SQL</acronym> Interpolation</title>
+ <refsect3 id="app-psql-interpolation">
+ <title id="app-psql-interpolation-title"><acronym>SQL</acronym> Interpolation</title>
<para>
A key feature of <application>psql</application>
</refsect3>
- <refsect3 id="APP-PSQL-prompting">
- <title id="APP-PSQL-prompting-title">Prompting</title>
+ <refsect3 id="app-psql-prompting">
+ <title id="app-psql-prompting-title">Prompting</title>
<para>
The prompts <application>psql</application> issues can be customized
<para>
The value of the <application>psql</application> variable
<replaceable class="parameter">name</replaceable>. See the
- section <xref linkend="APP-PSQL-variables"
- endterm="APP-PSQL-variables-title"> for details.
+ section <xref linkend="app-psql-variables"
+ endterm="app-psql-variables-title"> for details.
</para>
</listitem>
</varlistentry>
</refsect1>
- <refsect1 id="APP-PSQL-examples">
- <title id="APP-PSQL-examples-title">Examples</title>
+ <refsect1 id="app-psql-examples">
+ <title id="app-psql-examples-title">Examples</title>
<para>
The first example shows how to spread a command over several lines of
PostgreSQL documentation
-->
-<refentry id="SQL-REASSIGN-OWNED">
+<refentry id="sql-reassign-owned">
<indexterm zone="sql-reassign-owned">
<primary>REASSIGN OWNED</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-REFRESHMATERIALIZEDVIEW">
+<refentry id="sql-refreshmaterializedview">
<indexterm zone="sql-refreshmaterializedview">
<primary>REFRESH MATERIALIZED VIEW</primary>
</indexterm>
<para>
While the default index for future
- <xref linkend="SQL-CLUSTER">
+ <xref linkend="sql-cluster">
operations is retained, <command>REFRESH MATERIALIZED VIEW</command> does not
order the generated rows based on this property. If you want the data
to be ordered upon generation, you must use an <literal>ORDER BY</literal>
PostgreSQL documentation
-->
-<refentry id="SQL-REINDEX">
+<refentry id="sql-reindex">
<indexterm zone="sql-reindex">
<primary>REINDEX</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="APP-REINDEXDB">
+<refentry id="app-reindexdb">
<indexterm zone="app-reindexdb">
<primary>reindexdb</primary>
</indexterm>
<para>
<application>reindexdb</application> is a wrapper around the SQL
- command <xref linkend="SQL-REINDEX">.
+ command <xref linkend="sql-reindex">.
There is no effective difference between reindexing databases via
this utility and via other methods for accessing the server.
</para>
<title>Diagnostics</title>
<para>
- In case of difficulty, see <xref linkend="SQL-REINDEX">
- and <xref linkend="APP-PSQL"> for
+ In case of difficulty, see <xref linkend="sql-reindex">
+ and <xref linkend="app-psql"> for
discussions of potential problems and error messages.
The database server must be running at the
targeted host. Also, any default connection settings and environment
PostgreSQL documentation
-->
-<refentry id="SQL-RELEASE-SAVEPOINT">
+<refentry id="sql-release-savepoint">
<indexterm zone="sql-release-savepoint">
<primary>RELEASE SAVEPOINT</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-RESET">
+<refentry id="sql-reset">
<indexterm zone="sql-reset">
<primary>RESET</primary>
</indexterm>
<title>See Also</title>
<simplelist type="inline">
- <member><xref linkend="SQL-SET"></member>
- <member><xref linkend="SQL-SHOW"></member>
+ <member><xref linkend="sql-set"></member>
+ <member><xref linkend="sql-show"></member>
</simplelist>
</refsect1>
</refentry>
PostgreSQL documentation
-->
-<refentry id="SQL-REVOKE">
+<refentry id="sql-revoke">
<indexterm zone="sql-revoke">
<primary>REVOKE</primary>
</indexterm>
</synopsis>
</refsynopsisdiv>
- <refsect1 id="SQL-REVOKE-description">
+ <refsect1 id="sql-revoke-description">
<title>Description</title>
<para>
</para>
</refsect1>
- <refsect1 id="SQL-REVOKE-notes">
+ <refsect1 id="sql-revoke-notes">
<title>Notes</title>
<para>
</para>
</refsect1>
- <refsect1 id="SQL-REVOKE-examples">
+ <refsect1 id="sql-revoke-examples">
<title>Examples</title>
<para>
</programlisting></para>
</refsect1>
- <refsect1 id="SQL-REVOKE-compatibility">
+ <refsect1 id="sql-revoke-compatibility">
<title>Compatibility</title>
<para>
PostgreSQL documentation
-->
-<refentry id="SQL-ROLLBACK">
+<refentry id="sql-rollback">
<indexterm zone="sql-rollback">
<primary>ROLLBACK</primary>
</indexterm>
<title>Notes</title>
<para>
- Use <xref linkend="SQL-COMMIT"> to
+ Use <xref linkend="sql-commit"> to
successfully terminate a transaction.
</para>
PostgreSQL documentation
-->
-<refentry id="SQL-ROLLBACK-PREPARED">
+<refentry id="sql-rollback-prepared">
<indexterm zone="sql-rollback-prepared">
<primary>ROLLBACK PREPARED</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-ROLLBACK-TO">
+<refentry id="sql-rollback-to">
<indexterm zone="sql-rollback-to">
<primary>ROLLBACK TO SAVEPOINT</primary>
</indexterm>
<title>Notes</title>
<para>
- Use <xref linkend="SQL-RELEASE-SAVEPOINT"> to destroy a savepoint
+ Use <xref linkend="sql-release-savepoint"> to destroy a savepoint
without discarding the effects of commands executed after it was
established.
</para>
PostgreSQL documentation
-->
-<refentry id="SQL-SAVEPOINT">
+<refentry id="sql-savepoint">
<indexterm zone="sql-savepoint">
<primary>SAVEPOINT</primary>
</indexterm>
<title>Notes</title>
<para>
- Use <xref linkend="SQL-ROLLBACK-TO"> to
- rollback to a savepoint. Use <xref linkend="SQL-RELEASE-SAVEPOINT">
+ Use <xref linkend="sql-rollback-to"> to
+ rollback to a savepoint. Use <xref linkend="sql-release-savepoint">
to destroy a savepoint, keeping
the effects of commands executed after it was established.
</para>
PostgreSQL documentation
-->
-<refentry id="SQL-SECURITY-LABEL">
+<refentry id="sql-security-label">
<indexterm zone="sql-security-label">
<primary>SECURITY LABEL</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-SELECT">
+<refentry id="sql-select">
<indexterm zone="sql-select">
<primary>SELECT</primary>
</indexterm>
<refsect1>
<title>Parameters</title>
- <refsect2 id="SQL-WITH">
+ <refsect2 id="sql-with">
<title id="sql-with-title"><literal>WITH</literal> Clause</title>
<para>
</para>
</refsect2>
- <refsect2 id="SQL-FROM">
+ <refsect2 id="sql-from">
<title id="sql-from-title"><literal>FROM</literal> Clause</title>
<para>
</para>
</refsect2>
- <refsect2 id="SQL-WHERE">
+ <refsect2 id="sql-where">
<title id="sql-where-title"><literal>WHERE</literal> Clause</title>
<para>
</para>
</refsect2>
- <refsect2 id="SQL-GROUPBY">
+ <refsect2 id="sql-groupby">
<title id="sql-groupby-title"><literal>GROUP BY</literal> Clause</title>
<para>
</para>
</refsect2>
- <refsect2 id="SQL-HAVING">
+ <refsect2 id="sql-having">
<title id="sql-having-title"><literal>HAVING</literal> Clause</title>
<para>
</para>
</refsect2>
- <refsect2 id="SQL-WINDOW">
+ <refsect2 id="sql-window">
<title id="sql-window-title"><literal>WINDOW</literal> Clause</title>
<para>
</para>
</refsect2>
- <refsect2 id="SQL-UNION">
+ <refsect2 id="sql-union">
<title id="sql-union-title"><literal>UNION</literal> Clause</title>
<para>
</para>
</refsect2>
- <refsect2 id="SQL-INTERSECT">
+ <refsect2 id="sql-intersect">
<title id="sql-intersect-title"><literal>INTERSECT</literal> Clause</title>
<para>
</para>
</refsect2>
- <refsect2 id="SQL-EXCEPT">
+ <refsect2 id="sql-except">
<title id="sql-except-title"><literal>EXCEPT</literal> Clause</title>
<para>
</para>
</refsect2>
- <refsect2 id="SQL-ORDERBY">
+ <refsect2 id="sql-orderby">
<title id="sql-orderby-title"><literal>ORDER BY</literal> Clause</title>
<para>
</para>
</refsect2>
- <refsect2 id="SQL-LIMIT">
+ <refsect2 id="sql-limit">
<title id="sql-limit-title"><literal>LIMIT</literal> Clause</title>
<para>
</para>
</refsect2>
- <refsect2 id="SQL-FOR-UPDATE-SHARE">
+ <refsect2 id="sql-for-update-share">
<title id="sql-for-update-share-title">The Locking Clause</title>
<para>
</caution>
</refsect2>
- <refsect2 id="SQL-TABLE">
+ <refsect2 id="sql-table">
<title><literal>TABLE</literal> Command</title>
<para>
PostgreSQL documentation
-->
-<refentry id="SQL-SELECTINTO">
+<refentry id="sql-selectinto">
<indexterm zone="sql-selectinto">
<primary>SELECT INTO</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-SET">
+<refentry id="sql-set">
<indexterm zone="sql-set">
<primary>SET</primary>
</indexterm>
<title>See Also</title>
<simplelist type="inline">
- <member><xref linkend="SQL-RESET"></member>
- <member><xref linkend="SQL-SHOW"></member>
+ <member><xref linkend="sql-reset"></member>
+ <member><xref linkend="sql-show"></member>
</simplelist>
</refsect1>
</refentry>
<!-- doc/src/sgml/ref/set_constraints.sgml -->
-<refentry id="SQL-SET-CONSTRAINTS">
+<refentry id="sql-set-constraints">
<indexterm zone="sql-set-constraints">
<primary>SET CONSTRAINTS</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-SET-ROLE">
+<refentry id="sql-set-role">
<indexterm zone="sql-set-role">
<primary>SET ROLE</primary>
</indexterm>
<para>
The <literal>SESSION</literal> and <literal>LOCAL</literal> modifiers act the same
- as for the regular <xref linkend="SQL-SET">
+ as for the regular <xref linkend="sql-set">
command.
</para>
<!-- doc/src/sgml/ref/set_session_auth.sgml -->
-<refentry id="SQL-SET-SESSION-AUTHORIZATION">
+<refentry id="sql-set-session-authorization">
<indexterm zone="sql-set-session-authorization">
<primary>SET SESSION AUTHORIZATION</primary>
</indexterm>
<para>
The <literal>SESSION</literal> and <literal>LOCAL</literal> modifiers act the same
- as for the regular <xref linkend="SQL-SET">
+ as for the regular <xref linkend="sql-set">
command.
</para>
<!-- doc/src/sgml/ref/set_transaction.sgml -->
-<refentry id="SQL-SET-TRANSACTION">
+<refentry id="sql-set-transaction">
<indexterm zone="sql-set-transaction">
<primary>SET TRANSACTION</primary>
</indexterm>
</programlisting></para>
</refsect1>
- <refsect1 id="R1-SQL-SET-TRANSACTION-3">
+ <refsect1 id="r1-sql-set-transaction-3">
<title>Compatibility</title>
<para>
PostgreSQL documentation
-->
-<refentry id="SQL-SHOW">
+<refentry id="sql-show">
<indexterm zone="sql-show">
<primary>SHOW</primary>
</indexterm>
<para>
The name of a run-time parameter. Available parameters are
documented in <xref linkend="runtime-config"> and on the <xref
- linkend="SQL-SET"> reference page. In
+ linkend="sql-set"> reference page. In
addition, there are a few parameters that can be shown but not
set:
<title>See Also</title>
<simplelist type="inline">
- <member><xref linkend="SQL-SET"></member>
- <member><xref linkend="SQL-RESET"></member>
+ <member><xref linkend="sql-set"></member>
+ <member><xref linkend="sql-reset"></member>
</simplelist>
</refsect1>
PostgreSQL documentation
-->
-<refentry id="SQL-START-TRANSACTION">
+<refentry id="sql-start-transaction">
<indexterm zone="sql-start-transaction">
<primary>START TRANSACTION</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-TRUNCATE">
+<refentry id="sql-truncate">
<indexterm zone="sql-truncate">
<primary>TRUNCATE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-UNLISTEN">
+<refentry id="sql-unlisten">
<indexterm zone="sql-unlisten">
<primary>UNLISTEN</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-UPDATE">
+<refentry id="sql-update">
<indexterm zone="sql-update">
<primary>UPDATE</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="SQL-VACUUM">
+<refentry id="sql-vacuum">
<indexterm zone="sql-vacuum">
<primary>VACUUM</primary>
</indexterm>
PostgreSQL documentation
-->
-<refentry id="APP-VACUUMDB">
+<refentry id="app-vacuumdb">
<indexterm zone="app-vacuumdb">
<primary>vacuumdb</primary>
</indexterm>
<para>
<application>vacuumdb</application> is a wrapper around the SQL
- command <xref linkend="SQL-VACUUM">.
+ command <xref linkend="sql-vacuum">.
There is no effective difference between vacuuming and analyzing
databases via this utility and via other methods for accessing the
server.
<title>Diagnostics</title>
<para>
- In case of difficulty, see <xref linkend="SQL-VACUUM">
- and <xref linkend="APP-PSQL"> for
+ In case of difficulty, see <xref linkend="sql-vacuum">
+ and <xref linkend="app-psql"> for
discussions of potential problems and error messages.
The database server must be running at the
targeted host. Also, any default connection settings and environment
PostgreSQL documentation
-->
-<refentry id="SQL-VALUES">
+<refentry id="sql-values">
<indexterm zone="sql-values">
<primary>VALUES</primary>
</indexterm>
</para>
<para>
- A new <link linkend="SQL-CREATEINDEX"><command>CREATE
+ A new <link linkend="sql-createindex"><command>CREATE
INDEX</command></link> option enables auto-summarization of the
previous <acronym>BRIN</acronym> page range when a new page
range is created.
<para>
New commands are <link
- linkend="SQL-CREATESTATISTICS"><command>CREATE STATISTICS</command></link>,
- <link linkend="SQL-ALTERSTATISTICS"><command>ALTER STATISTICS</command></link>, and
- <link linkend="SQL-DROPSTATISTICS"><command>DROP STATISTICS</command></link>.
+ linkend="sql-createstatistics"><command>CREATE STATISTICS</command></link>,
+ <link linkend="sql-alterstatistics"><command>ALTER STATISTICS</command></link>, and
+ <link linkend="sql-dropstatistics"><command>DROP STATISTICS</command></link>.
This feature is helpful in estimating query memory usage and when
combining the statistics from individual columns.
</para>
-->
<para>
Allow explicit control
- over <link linkend="SQL-EXPLAIN"><command>EXPLAIN</command></link>'s display
+ over <link linkend="sql-explain"><command>EXPLAIN</command></link>'s display
of planning and execution time (Ashutosh Bapat)
</para>
-->
<para>
Properly update the statistics collector during <link
- linkend="SQL-REFRESHMATERIALIZEDVIEW"><command>REFRESH MATERIALIZED
+ linkend="sql-refreshmaterializedview"><command>REFRESH MATERIALIZED
VIEW</command></link> (Jim Mlodgenski)
</para>
</listitem>
2016-12-07 [f0e44751d] Implement table partitioning.
-->
<para>
- Add table <link linkend="SQL-CREATETABLE-PARTITION">partitioning
+ Add table <link linkend="sql-createtable-partition">partitioning
syntax</link> that automatically creates partition constraints and
handles routing of tuple insertions and updates (Amit Langote)
</para>
2017-03-31 [597027163] Add transition table support to plpgsql.
-->
<para>
- Add <link linkend="SQL-CREATETRIGGER"><literal>AFTER</literal> trigger</link>
+ Add <link linkend="sql-createtrigger"><literal>AFTER</literal> trigger</link>
transition tables to record changed rows (Kevin Grittner, Thomas
Munro)
</para>
2016-12-05 [093129c9d] Add support for restrictive RLS policies
-->
<para>
- Allow <link linkend="SQL-CREATEPOLICY">restrictive row-level
+ Allow <link linkend="sql-createpolicy">restrictive row-level
security policies</link> (Stephen Frost)
</para>
2017-03-28 [ab89e465c] Altering default privileges on schemas
-->
<para>
- Allow <link linkend="SQL-ALTERDEFAULTPRIVILEGES">default
+ Allow <link linkend="sql-alterdefaultprivileges">default
permissions</link> on schemas (Matheus Oliveira)
</para>
2017-02-10 [2ea5b06c7] Add CREATE SEQUENCE AS <data type> clause
-->
<para>
- Add <link linkend="SQL-CREATESEQUENCE"><command>CREATE SEQUENCE
+ Add <link linkend="sql-createsequence"><command>CREATE SEQUENCE
AS</command></link> command to create a sequence matching an integer data type
(Peter Eisentraut)
</para>
</para>
<para>
- For example, allow <link linkend="SQL-DROPFUNCTION"><command>DROP
+ For example, allow <link linkend="sql-dropfunction"><command>DROP
FUNCTION</command></link> on a function name without arguments if there
is only one function with that name. This behavior is required by the
<acronym>SQL</acronym> standard.
-->
<para>
Support <literal>IF NOT EXISTS</literal>
- in <link linkend="SQL-CREATESERVER"><command>CREATE SERVER</command></link>,
- <link linkend="SQL-CREATEUSERMAPPING"><command>CREATE USER MAPPING</command></link>,
- and <link linkend="SQL-CREATECOLLATION"><command>CREATE COLLATION</command></link>
+ in <link linkend="sql-createserver"><command>CREATE SERVER</command></link>,
+ <link linkend="sql-createusermapping"><command>CREATE USER MAPPING</command></link>,
+ and <link linkend="sql-createcollation"><command>CREATE COLLATION</command></link>
(Anastasia Lubennikova, Peter Eisentraut)
</para>
</listitem>
2017-03-03 [9eb344faf] Allow vacuums to report oldestxmin
-->
<para>
- Make <link linkend="SQL-VACUUM"><command>VACUUM VERBOSE</command></link> report
+ Make <link linkend="sql-vacuum"><command>VACUUM VERBOSE</command></link> report
the number of skipped frozen pages and oldest xmin (Masahiko
Sawada, Simon Riggs)
</para>
2017-04-06 [321732705] Identity columns
-->
<para>
- Add <link linkend="SQL-CREATETABLE">identity columns</link> for
+ Add <link linkend="sql-createtable">identity columns</link> for
assigning a numeric value to columns on insert (Peter Eisentraut)
</para>
</para>
<para>
- This uses the syntax <link linkend="SQL-ALTERTYPE"><command>ALTER
+ This uses the syntax <link linkend="sql-altertype"><command>ALTER
TYPE ... RENAME VALUE</command></link>.
</para>
</listitem>
<title>Client Applications</title>
<sect4>
- <title><xref linkend="APP-PSQL"></title>
+ <title><xref linkend="app-psql"></title>
<itemizedlist>
2016-10-19 [5d58c07a4] initdb pg_basebackup: Rename -\-noxxx options to -\-no-x
-->
<para>
- Rename <link linkend="APP-INITDB"><application>initdb</application></link>
+ Rename <link linkend="app-initdb"><application>initdb</application></link>
options <option>--noclean</option> and <option>--nosync</option> to be spelled
<option>--no-clean</option> and <option>--no-sync</option> (Vik Fearing,
Peter Eisentraut)
</itemizedlist>
<sect4>
- <title><link linkend="APP-PGDUMP"><application>pg_dump</application></link>,
- <link linkend="APP-PG-DUMPALL"><application>pg_dumpall</application></link>,
- <link linkend="APP-PGRESTORE"><application>pg_restore</application></link></title>
+ <title><link linkend="app-pgdump"><application>pg_dump</application></link>,
+ <link linkend="app-pg-dumpall"><application>pg_dumpall</application></link>,
+ <link linkend="app-pgrestore"><application>pg_restore</application></link></title>
<itemizedlist>
<listitem>
<para>
- Make <link linkend="SQL-SET-CONSTRAINTS"><command>SET
+ Make <link linkend="sql-set-constraints"><command>SET
CONSTRAINT</command></link> affect only one constraint (Kris Jurka)
</para>
<listitem>
<para>
Add <literal>FILLFACTOR</literal> to <link
- linkend="SQL-CREATETABLE">table</link> and <link
- linkend="SQL-CREATEINDEX">index</link> creation (ITAGAKI
+ linkend="sql-createtable">table</link> and <link
+ linkend="sql-createindex">index</link> creation (ITAGAKI
Takahiro)
</para>
<listitem>
<para>
Avoid extra scan of tables without indexes during <link
- linkend="SQL-VACUUM"><command>VACUUM</command></link> (Greg Stark)
+ linkend="sql-vacuum"><command>VACUUM</command></link> (Greg Stark)
</para>
</listitem>
<listitem>
<para>
- Improve multicolumn <link linkend="GiST"><acronym>GiST</acronym></link>
+ Improve multicolumn <link linkend="gist"><acronym>GiST</acronym></link>
indexing (Oleg, Teodor)
</para>
</listitem>
<listitem>
<para>
- <link linkend="GiST"><acronym>GiST</acronym></link> indexes are
+ <link linkend="gist"><acronym>GiST</acronym></link> indexes are
now clusterable (Teodor)
</para>
</listitem>
<listitem>
<para>
- Add <link linkend="SQL-INSERT"><command>INSERT</command></link>/<link
- linkend="SQL-UPDATE"><command>UPDATE</command></link>/<link
- linkend="SQL-DELETE"><command>DELETE</command></link>
+ Add <link linkend="sql-insert"><command>INSERT</command></link>/<link
+ linkend="sql-update"><command>UPDATE</command></link>/<link
+ linkend="sql-delete"><command>DELETE</command></link>
<literal>RETURNING</literal> (Jonah Harris, Tom)
</para>
<listitem>
<para>
- Allow <link linkend="SQL-UPDATE"><command>UPDATE</command></link>
- and <link linkend="SQL-DELETE"><command>DELETE</command></link>
+ Allow <link linkend="sql-update"><command>UPDATE</command></link>
+ and <link linkend="sql-delete"><command>DELETE</command></link>
to use an alias for the target table (Atsushi Ogawa)
</para>
<listitem>
<para>
- Allow <link linkend="SQL-UPDATE"><command>UPDATE</command></link>
+ Allow <link linkend="sql-update"><command>UPDATE</command></link>
to set multiple columns with a list of values (Susanne
Ebrecht)
</para>
<listitem>
<para>
- Add <link linkend="SQL-TRUNCATE"><literal>CASCADE</literal></link>
+ Add <link linkend="sql-truncate"><literal>CASCADE</literal></link>
option to <command>TRUNCATE</command> (Joachim Wieland)
</para>
<listitem>
<para>
Support <literal>FOR UPDATE</literal> and <literal>FOR SHARE</literal>
- in the same <link linkend="SQL-INSERT"><literal>SELECT</literal></link>
+ in the same <link linkend="sql-insert"><literal>SELECT</literal></link>
command (Tom)
</para>
</listitem>
<listitem>
<para>
Support portal parameters in <link
- linkend="SQL-EXPLAIN"><command>EXPLAIN</command></link> and <link
- linkend="SQL-EXECUTE"><command>EXECUTE</command></link> (Tom)
+ linkend="sql-explain"><command>EXPLAIN</command></link> and <link
+ linkend="sql-execute"><command>EXECUTE</command></link> (Tom)
</para>
<para>
<listitem>
<para>
If <acronym>SQL</acronym>-level <link
- linkend="SQL-PREPARE"><command>PREPARE</command></link> parameters
+ linkend="sql-prepare"><command>PREPARE</command></link> parameters
are unspecified, infer their types from the content of the
query (Neil)
</para>
<listitem>
<para>
Add <literal>TABLESPACE</literal> clause to <link
- linkend="SQL-CREATETABLEAS"><command>CREATE TABLE AS</command></link>
+ linkend="sql-createtableas"><command>CREATE TABLE AS</command></link>
(Neil)
</para>
<listitem>
<para>
Add <literal>ON COMMIT</literal> clause to <link
- linkend="SQL-CREATETABLEAS"><command>CREATE TABLE AS</command></link>
+ linkend="sql-createtableas"><command>CREATE TABLE AS</command></link>
(Neil)
</para>
<listitem>
<para>
Add <literal>INCLUDING CONSTRAINTS</literal> to <link
- linkend="SQL-CREATETABLE"><command>CREATE TABLE LIKE</command></link>
+ linkend="sql-createtable"><command>CREATE TABLE LIKE</command></link>
(Greg Stark)
</para>
<listitem>
<para>
Allow the creation of placeholder (shell) <link
- linkend="SQL-CREATETYPE">types</link> (Martijn van Oosterhout)
+ linkend="sql-createtype">types</link> (Martijn van Oosterhout)
</para>
<para>
<listitem>
<para>
- <link linkend="SQL-CREATEAGGREGATE">Aggregate functions</link>
+ <link linkend="sql-createaggregate">Aggregate functions</link>
now support multiple input parameters (Sergey Koposov, Tom)
</para>
</listitem>
<listitem>
<para>
Add new aggregate creation <link
- linkend="SQL-CREATEAGGREGATE">syntax</link> (Tom)
+ linkend="sql-createaggregate">syntax</link> (Tom)
</para>
<para>
<listitem>
<para>
Add <link
- linkend="SQL-ALTERROLE"><command>ALTER ROLE PASSWORD NULL</command></link>
+ linkend="sql-alterrole"><command>ALTER ROLE PASSWORD NULL</command></link>
to remove a previously set role password (Peter)
</para>
</listitem>
<listitem>
<para>
- Add <link linkend="SQL-DROP-OWNED"><literal>DROP OWNED</literal></link>
+ Add <link linkend="sql-drop-owned"><literal>DROP OWNED</literal></link>
to drop all objects owned by a role (Alvaro)
</para>
</listitem>
<listitem>
<para>
- Add <link linkend="SQL-REASSIGN-OWNED"><literal>REASSIGN
+ Add <link linkend="sql-reassign-owned"><literal>REASSIGN
OWNED</literal></link> to reassign ownership of all objects owned
by a role (Alvaro)
</para>
<listitem>
<para>
- Add <link linkend="SQL-GRANT"><command>GRANT ON SEQUENCE</command></link>
+ Add <link linkend="sql-grant"><command>GRANT ON SEQUENCE</command></link>
syntax (Bruce)
</para>
<listitem>
<para>
- Add <link linkend="SQL-GRANT"><literal>USAGE</literal></link>
+ Add <link linkend="sql-grant"><literal>USAGE</literal></link>
permission for sequences that allows only <function>currval()</function>
and <function>nextval()</function>, not <function>setval()</function>
(Bruce)
<listitem>
<para>
- Add <link linkend="SQL-ALTERTABLE"><literal>ALTER TABLE
+ Add <link linkend="sql-altertable"><literal>ALTER TABLE
[ NO ] INHERIT</literal></link> (Greg Stark)
</para>
<listitem>
<para>
- Allow <link linkend="SQL-COMMENT">comments</link> on global
+ Allow <link linkend="sql-comment">comments</link> on global
objects to be stored globally (Kris Jurka)
</para>
</para>
<para>
- The new syntax is <link linkend="SQL-CREATEINDEX"><command>CREATE
+ The new syntax is <link linkend="sql-createindex"><command>CREATE
INDEX CONCURRENTLY</command></link>. The default behavior is
still to block table modification while an index is being
created.
<listitem>
<para>
- Allow <link linkend="SQL-COPY"><command>COPY</command></link> to
+ Allow <link linkend="sql-copy"><command>COPY</command></link> to
dump a <command>SELECT</command> query (Zoltan Boszormenyi, Karel
Zak)
</para>
<listitem>
<para>
- Make the <link linkend="SQL-COPY"><command>COPY</command></link>
+ Make the <link linkend="sql-copy"><command>COPY</command></link>
command return a command tag that includes the number of
rows copied (Volkan YAZICI)
</para>
<listitem>
<para>
- Allow <link linkend="SQL-VACUUM"><command>VACUUM</command></link>
+ Allow <link linkend="sql-vacuum"><command>VACUUM</command></link>
to expire rows without being affected by other concurrent
<command>VACUUM</command> operations (Hannu Krossing, Alvaro, Tom)
</para>
<listitem>
<para>
- Make <link linkend="APP-INITDB"><application>initdb</application></link>
+ Make <link linkend="app-initdb"><application>initdb</application></link>
detect the operating system locale and set the default
<varname>DateStyle</varname> accordingly (Peter)
</para>
<listitem>
<para>
- Allow <link linkend="SQL-CREATEDOMAIN">domains</link> to be
+ Allow <link linkend="sql-createdomain">domains</link> to be
based on other domains (Tom)
</para>
</listitem>
The fix is to dump a <type>SERIAL</type> column by explicitly
specifying its <literal>DEFAULT</literal> and sequence elements,
and reconstructing the <type>SERIAL</type> column on reload
- using a new <link linkend="SQL-ALTERSEQUENCE"><command>ALTER
+ using a new <link linkend="sql-altersequence"><command>ALTER
SEQUENCE OWNED BY</command></link> command. This also allows
dropping a <type>SERIAL</type> column specification.
</para>
</sect3>
<sect3>
- <title><link linkend="APP-PSQL"><application>psql</application></link> Changes</title>
+ <title><link linkend="app-psql"><application>psql</application></link> Changes</title>
<itemizedlist>
<listitem>
</sect3>
<sect3>
- <title><link linkend="APP-PGDUMP"><application>pg_dump</application></link> Changes</title>
+ <title><link linkend="app-pgdump"><application>pg_dump</application></link> Changes</title>
<itemizedlist>
<listitem>
<listitem>
<para>
- Add <link linkend="APP-PGRESTORE"><application>pg_restore</application></link>
+ Add <link linkend="app-pgrestore"><application>pg_restore</application></link>
<literal>--no-data-for-failed-tables</literal> option to suppress
loading data if table creation failed (i.e., the table already
exists) (Martin Pitt)
<listitem>
<para>
- Add <link linkend="APP-PGRESTORE"><application>pg_restore</application></link>
+ Add <link linkend="app-pgrestore"><application>pg_restore</application></link>
option to run the entire session in a single transaction
(Simon)
</para>
<para>
This allows passwords to be sent pre-encrypted for commands
- like <link linkend="SQL-ALTERROLE"><command>ALTER ROLE ...
+ like <link linkend="sql-alterrole"><command>ALTER ROLE ...
PASSWORD</command></link>.
</para>
</listitem>
<listitem>
<para>
- Allow <link linkend="SQL-SHOW"><command>SHOW</command></link> to
+ Allow <link linkend="sql-show"><command>SHOW</command></link> to
put its result into a variable (Joachim Wieland)
</para>
</listitem>
<listitem>
<para>
- Add <link linkend="SQL-COPY"><command>COPY TO STDOUT</command></link>
+ Add <link linkend="sql-copy"><command>COPY TO STDOUT</command></link>
(Joachim Wieland)
</para>
</listitem>
<listitem>
<para>
Add <acronym>MSVC</acronym> support for utility commands and <link
- linkend="APP-PGDUMP"><application>pg_dump</application></link> (Hiroshi
+ linkend="app-pgdump"><application>pg_dump</application></link> (Hiroshi
Saito)
</para>
</listitem>
<listitem>
<para>
- Add <link linkend="GIN"><acronym>GIN</acronym></link> (Generalized
+ Add <link linkend="gin"><acronym>GIN</acronym></link> (Generalized
Inverted iNdex) index access method (Teodor, Oleg)
</para>
</listitem>
<para>
Rtree has been re-implemented using <link
- linkend="GiST"><acronym>GiST</acronym></link>. Among other
+ linkend="gist"><acronym>GiST</acronym></link>. Among other
differences, this means that rtree indexes now have support
for crash recovery via write-ahead logging (WAL).
</para>
</sect3>
<sect3>
- <title><link linkend="APP-PSQL"><application>psql</application></link></title>
+ <title><link linkend="app-psql"><application>psql</application></link></title>
<itemizedlist>
<listitem>
</sect3>
<sect3>
- <title><link linkend="APP-PGDUMP"><application>pg_dump</application></link></title>
+ <title><link linkend="app-pgdump"><application>pg_dump</application></link></title>
<itemizedlist>
<listitem>
<listitem>
<para>
Easier database object permissions management. <link
- linkend="SQL-GRANT"><command>GRANT</command>/<command>REVOKE IN
+ linkend="sql-grant"><command>GRANT</command>/<command>REVOKE IN
SCHEMA</command></link> supports mass permissions changes on existing objects,
- while <link linkend="SQL-ALTERDEFAULTPRIVILEGES"><command>ALTER DEFAULT
+ while <link linkend="sql-alterdefaultprivileges"><command>ALTER DEFAULT
PRIVILEGES</command></link> allows control of privileges for objects created in
the future. Large objects (BLOBs) now support permissions management as
well.
<listitem>
<para>
Broadly enhanced stored procedure support.
- The <link linkend="SQL-DO"><command>DO</command></link> statement supports
+ The <link linkend="sql-do"><command>DO</command></link> statement supports
ad-hoc or <quote>anonymous</quote> code blocks.
Functions can now be called using named parameters.
<link linkend="plpgsql">PL/pgSQL</link> is now installed by default, and
<para>
New trigger features, including
SQL-standard-compliant <link
- linkend="SQL-CREATETRIGGER">per-column triggers</link> and
+ linkend="sql-createtrigger">per-column triggers</link> and
conditional trigger execution.
</para>
</listitem>
<listitem>
<para>
- <link linkend="SQL-CREATETABLE-compatibility">Deferrable
+ <link linkend="sql-createtable-compatibility">Deferrable
unique constraints</link>. Mass updates to unique keys are now possible
without trickery.
</para>
<listitem>
<para>
New high-performance implementation of the
- <link linkend="SQL-LISTEN"><command>LISTEN</command></link>/<link
- linkend="SQL-NOTIFY"><command>NOTIFY</command></link> feature.
+ <link linkend="sql-listen"><command>LISTEN</command></link>/<link
+ linkend="sql-notify"><command>NOTIFY</command></link> feature.
Pending events are now stored in a memory-based queue rather than
a table. Also, a <quote>payload</quote> string can be sent with each
event, rather than transmitting just an event name as before.
<listitem>
<para>
New implementation of
- <link linkend="SQL-VACUUM"><command>VACUUM FULL</command></link>.
+ <link linkend="sql-vacuum"><command>VACUUM FULL</command></link>.
This command now rewrites the entire table and indexes, rather than
moving individual rows to compact space. It is substantially faster
in most cases, and no longer results in index bloat.
<para>
Allow per-tablespace values to be set for sequential and random page
cost estimates (<varname>seq_page_cost</varname>/<varname>random_page_cost</varname>)
- via <link linkend="SQL-ALTERTABLESPACE"><command>ALTER TABLESPACE
+ via <link linkend="sql-altertablespace"><command>ALTER TABLESPACE
... SET/RESET</command></link> (Robert Haas)
</para>
</listitem>
<listitem>
<para>
Improve performance of <link
- linkend="SQL-TRUNCATE"><command>TRUNCATE</command></link> when
+ linkend="sql-truncate"><command>TRUNCATE</command></link> when
the table was created or truncated earlier in the same transaction
(Tom Lane)
</para>
<listitem>
<para>
- Improve <link linkend="SQL-ANALYZE"><command>ANALYZE</command></link>
+ Improve <link linkend="sql-analyze"><command>ANALYZE</command></link>
to support inheritance-tree statistics (Tom Lane)
</para>
<listitem>
<para>
Allow setting of number-of-distinct-values statistics using <link
- linkend="SQL-ALTERTABLE"><command>ALTER TABLE</command></link>
+ linkend="sql-altertable"><command>ALTER TABLE</command></link>
(Robert Haas)
</para>
<listitem>
<para>
- Perform <link linkend="SQL-FOR-UPDATE-SHARE"><command>SELECT
+ Perform <link linkend="sql-for-update-share"><command>SELECT
FOR UPDATE</command>/<literal>SHARE</literal></link> processing after
applying <literal>LIMIT</literal>, so the number of rows returned
is always predictable (Tom Lane)
<listitem>
<para>
Allow mixing of traditional and SQL-standard <link
- linkend="SQL-LIMIT"><literal>LIMIT</literal>/<literal>OFFSET</literal></link>
+ linkend="sql-limit"><literal>LIMIT</literal>/<literal>OFFSET</literal></link>
syntax (Tom Lane)
</para>
</listitem>
<listitem>
<para>
Extend the supported frame options in <link
- linkend="SQL-WINDOW">window functions</link> (Hitoshi
+ linkend="sql-window">window functions</link> (Hitoshi
Harada)
</para>
<listitem>
<para>
- Speed up <link linkend="SQL-CREATEDATABASE"><command>CREATE
+ Speed up <link linkend="sql-createdatabase"><command>CREATE
DATABASE</command></link> by deferring flushes to disk (Andres
Freund, Greg Stark)
</para>
<listitem>
<para>
- Allow <link linkend="SQL-COMMENT">comments</link> on
+ Allow <link linkend="sql-comment">comments</link> on
columns of tables, views, and composite types only, not other
relation types such as indexes and <acronym>TOAST</acronym> tables (Tom Lane)
</para>
<listitem>
<para>
Allow the creation of <link
- linkend="SQL-CREATETYPE-enum">enumerated types</link> containing
+ linkend="sql-createtype-enum">enumerated types</link> containing
no values (Bruce Momjian)
</para>
</listitem>
</sect4>
<sect4>
- <title><link linkend="SQL-CREATETABLE"><command>CREATE TABLE</command></link></title>
+ <title><link linkend="sql-createtable"><command>CREATE TABLE</command></link></title>
<itemizedlist>
<listitem>
<para>
- Add <link linkend="SQL-CREATETABLE-compatibility">deferrable
+ Add <link linkend="sql-createtable-compatibility">deferrable
unique constraints</link> (Dean Rasheed)
</para>
<para>
Exclusion constraints generalize uniqueness constraints by allowing
arbitrary comparison operators, not just equality. They are created
- with the <link linkend="SQL-CREATETABLE-EXCLUDE"><command>CREATE
+ with the <link linkend="sql-createtable-exclude"><command>CREATE
TABLE CONSTRAINT ... EXCLUDE</command></link> clause.
The most common use of exclusion constraints is to specify that column
entries must not overlap, rather than simply not be equal. This is
<para>
Add the ability to make mass permission changes across a whole
schema using the new <link
- linkend="SQL-GRANT"><command>GRANT</command>/<command>REVOKE
+ linkend="sql-grant"><command>GRANT</command>/<command>REVOKE
IN SCHEMA</command></link> clause (Petr Jelinek)
</para>
<listitem>
<para>
- Add <link linkend="SQL-ALTERDEFAULTPRIVILEGES"><command>ALTER
+ Add <link linkend="sql-alterdefaultprivileges"><command>ALTER
DEFAULT PRIVILEGES</command></link> command to control privileges
of objects created later (Petr Jelinek)
</para>
<listitem>
<para>
- Make <link linkend="SQL-LISTEN"><command>LISTEN</command></link>/<link
- linkend="SQL-NOTIFY"><command>NOTIFY</command></link> store pending events
+ Make <link linkend="sql-listen"><command>LISTEN</command></link>/<link
+ linkend="sql-notify"><command>NOTIFY</command></link> store pending events
in a memory queue, rather than in a system table (Joachim
Wieland)
</para>
<listitem>
<para>
- Allow <link linkend="SQL-NOTIFY"><command>NOTIFY</command></link>
+ Allow <link linkend="sql-notify"><command>NOTIFY</command></link>
to pass an optional <quote>payload</quote> string to listeners
(Joachim Wieland)
</para>
<listitem>
<para>
- Allow <link linkend="SQL-CLUSTER"><command>CLUSTER</command></link>
+ Allow <link linkend="sql-cluster"><command>CLUSTER</command></link>
on all per-database system catalogs (Tom Lane)
</para>
</itemizedlist>
<sect4>
- <title><link linkend="SQL-COPY"><command>COPY</command></link></title>
+ <title><link linkend="sql-copy"><command>COPY</command></link></title>
<itemizedlist>
</sect4>
<sect4>
- <title><link linkend="SQL-EXPLAIN"><command>EXPLAIN</command></link></title>
+ <title><link linkend="sql-explain"><command>EXPLAIN</command></link></title>
<itemizedlist>
</sect4>
<sect4>
- <title><link linkend="SQL-VACUUM"><command>VACUUM</command></link></title>
+ <title><link linkend="sql-vacuum"><command>VACUUM</command></link></title>
<itemizedlist>
<listitem>
<para>
Allow an index to be named automatically by omitting the index name in
- <link linkend="SQL-CREATEINDEX"><command>CREATE INDEX</command></link>
+ <link linkend="sql-createindex"><command>CREATE INDEX</command></link>
(Tom Lane)
</para>
</listitem>
<listitem>
<para>
Support execution of anonymous code blocks using the <link
- linkend="SQL-DO"><command>DO</command></link> statement
+ linkend="sql-do"><command>DO</command></link> statement
(Petr Jelinek, Joshua Tolley, Hannu Valtonen)
</para>
<listitem>
<para>
Implement SQL-standard-compliant <link
- linkend="SQL-CREATETRIGGER">per-column triggers</link>
+ linkend="sql-createtrigger">per-column triggers</link>
(Itagaki Takahiro)
</para>
<listitem>
<para>
Add the <literal>WHEN</literal> clause to <link
- linkend="SQL-CREATETRIGGER"><command>CREATE TRIGGER</command></link>
+ linkend="sql-createtrigger"><command>CREATE TRIGGER</command></link>
to allow control over whether a trigger is fired (Itagaki
Takahiro)
</para>
<listitem>
<para>
Add the <literal>OR REPLACE</literal> clause to <link
- linkend="SQL-CREATELANGUAGE"><command>CREATE LANGUAGE</command></link>
+ linkend="sql-createlanguage"><command>CREATE LANGUAGE</command></link>
(Tom Lane)
</para>
<listitem>
<para>
Add an <option>--analyze-only</option> option to <link
- linkend="APP-VACUUMDB"><command>vacuumdb</command></link>, to analyze without
+ linkend="app-vacuumdb"><command>vacuumdb</command></link>, to analyze without
vacuuming (Bruce Momjian)
</para>
</listitem>
</itemizedlist>
<sect4>
- <title><link linkend="APP-PSQL"><application>psql</application></link></title>
+ <title><link linkend="app-psql"><application>psql</application></link></title>
<itemizedlist>
<listitem>
<para>
Add support for quoting/escaping the values of <application>psql</application>
- <link linkend="APP-PSQL-variables">variables</link> as SQL strings or
+ <link linkend="app-psql-variables">variables</link> as SQL strings or
identifiers (Pavel Stehule, Robert Haas)
</para>
<listitem>
<para>
Fix <command>psql --file -</command> to properly honor <link
- linkend="R1-APP-PSQL-3"><option>--single-transaction</option></link>
+ linkend="r1-app-psql-3"><option>--single-transaction</option></link>
(Bruce Momjian)
</para>
</listitem>
<sect5>
<title><application>psql</application> <link
- linkend="APP-PSQL-meta-commands"><command>\d</command></link>
+ linkend="app-psql-meta-commands"><command>\d</command></link>
Commands</title>
<itemizedlist>
</sect4>
<sect4>
- <title><link linkend="APP-PGDUMP"><application>pg_dump</application></link></title>
+ <title><link linkend="app-pgdump"><application>pg_dump</application></link></title>
<itemizedlist>
<listitem>
<para>
Add <link
- linkend="CONTRIB-DBLINK-GET-NOTIFY"><function>dblink_get_notify()</function></link>
+ linkend="contrib-dblink-get-notify"><function>dblink_get_notify()</function></link>
to <filename>contrib/dblink</filename> (Marcus Kempe)
</para>
<para>
This affects <link
- linkend="CONTRIB-DBLINK-BUILD-SQL-INSERT"><function>dblink_build_sql_insert()</function></link>
+ linkend="contrib-dblink-build-sql-insert"><function>dblink_build_sql_insert()</function></link>
and related functions. These functions now number columns according
to logical not physical column numbers.
</para>
<listitem>
<para>
- Add support for <link linkend="SQL-CREATEFOREIGNTABLE">foreign
+ Add support for <link linkend="sql-createforeigntable">foreign
tables</link>
</para>
</listitem>
<listitem>
<para>
Support unlogged tables using the <literal>UNLOGGED</literal>
- option in <link linkend="SQL-CREATETABLE"><command>CREATE
+ option in <link linkend="sql-createtable"><command>CREATE
TABLE</command></link>
</para>
</listitem>
<listitem>
<para>
Add nearest-neighbor (order-by-operator) searching to <link
- linkend="GiST"><acronym>GiST</acronym> indexes</link>
+ linkend="gist"><acronym>GiST</acronym> indexes</link>
</para>
</listitem>
<listitem>
<para>
- Add a <link linkend="SQL-SECURITY-LABEL"><command>SECURITY
+ Add a <link linkend="sql-security-label"><command>SECURITY
LABEL</command></link> command and support for
<link linkend="sepgsql"><acronym>SELinux</acronym> permissions control</link>
</para>
<listitem>
<para>
All contrib modules are now installed with <link
- linkend="SQL-CREATEEXTENSION"><command>CREATE EXTENSION</command></link>
+ linkend="sql-createextension"><command>CREATE EXTENSION</command></link>
rather than by manually invoking their SQL scripts
(Dimitri Fontaine, Tom Lane)
</para>
<listitem>
<para>
Support unlogged tables using the <literal>UNLOGGED</literal>
- option in <link linkend="SQL-CREATETABLE"><command>CREATE
+ option in <link linkend="sql-createtable"><command>CREATE
TABLE</command></link> (Robert Haas)
</para>
<listitem>
<para>
- Add a <link linkend="SQL-CREATEROLE">replication permission</link>
+ Add a <link linkend="sql-createrole">replication permission</link>
for roles (Magnus Hagander)
</para>
<para>
Extensions are controlled by the new <link
- linkend="SQL-CREATEEXTENSION"><command>CREATE</command></link>/<link
- linkend="SQL-ALTEREXTENSION"><command>ALTER</command></link>/<link
- linkend="SQL-DROPEXTENSION"><command>DROP EXTENSION</command></link>
+ linkend="sql-createextension"><command>CREATE</command></link>/<link
+ linkend="sql-alterextension"><command>ALTER</command></link>/<link
+ linkend="sql-dropextension"><command>DROP EXTENSION</command></link>
commands. This replaces ad-hoc methods of grouping objects that
are added to a <productname>PostgreSQL</productname> installation.
</para>
<listitem>
<para>
- Add support for <link linkend="SQL-CREATEFOREIGNTABLE">foreign
+ Add support for <link linkend="sql-createforeigntable">foreign
tables</link> (Shigeru Hanada, Robert Haas, Jan Urbanski,
Heikki Linnakangas)
</para>
<listitem>
<para>
Allow new values to be added to an existing enum type via
- <link linkend="SQL-ALTERTYPE"><command>ALTER TYPE</command></link> (Andrew
+ <link linkend="sql-altertype"><command>ALTER TYPE</command></link> (Andrew
Dunstan)
</para>
</listitem>
<listitem>
<para>
- Add <link linkend="SQL-ALTERTYPE"><command>ALTER TYPE ...
+ Add <link linkend="sql-altertype"><command>ALTER TYPE ...
ADD/DROP/ALTER/RENAME ATTRIBUTE</command></link> (Peter Eisentraut)
</para>
<listitem>
<para>
Add <literal>RESTRICT</literal>/<literal>CASCADE</literal> to <link
- linkend="SQL-ALTERTYPE"><command>ALTER TYPE</command></link> operations
+ linkend="sql-altertype"><command>ALTER TYPE</command></link> operations
on typed tables (Peter Eisentraut)
</para>
</sect4>
<sect4>
- <title><link linkend="SQL-CREATETABLE"><command>CREATE/ALTER TABLE</command></link></title>
+ <title><link linkend="sql-createtable"><command>CREATE/ALTER TABLE</command></link></title>
<itemizedlist>
<listitem>
<para>
- Allow <link linkend="SQL-ALTERTABLE"><command>ALTER TABLE
+ Allow <link linkend="sql-altertable"><command>ALTER TABLE
... SET DATA TYPE</command></link> to avoid table rewrites in
appropriate cases (Noah Misch, Robert Haas)
</para>
<listitem>
<para>
- Add <link linkend="SQL-CREATETABLE"><command>CREATE TABLE IF
+ Add <link linkend="sql-createtable"><command>CREATE TABLE IF
NOT EXISTS</command></link> syntax (Robert Haas)
</para>
<listitem>
<para>
- Add a <link linkend="SQL-SECURITY-LABEL"><command>SECURITY
+ Add a <link linkend="sql-security-label"><command>SECURITY
LABEL</command></link> command (KaiGai Kohei)
</para>
<listitem>
<para>
- Make <link linkend="SQL-TRUNCATE"><command>TRUNCATE ... RESTART
+ Make <link linkend="sql-truncate"><command>TRUNCATE ... RESTART
IDENTITY</command></link> restart sequences transactionally (Steve
Singer)
</para>
</itemizedlist>
<sect4>
- <title><link linkend="SQL-COPY"><command>COPY</command></link></title>
+ <title><link linkend="sql-copy"><command>COPY</command></link></title>
<itemizedlist>
<listitem>
<para>
Add <literal>ENCODING</literal> option to <link
- linkend="SQL-COPY"><command>COPY TO/FROM</command></link> (Hitoshi
+ linkend="sql-copy"><command>COPY TO/FROM</command></link> (Hitoshi
Harada, Itagaki Takahiro)
</para>
<listitem>
<para>
- Add bidirectional <link linkend="SQL-COPY"><command>COPY</command></link>
+ Add bidirectional <link linkend="sql-copy"><command>COPY</command></link>
protocol support (Fujii Masao)
</para>
</sect4>
<sect4>
- <title><link linkend="SQL-EXPLAIN"><command>EXPLAIN</command></link></title>
+ <title><link linkend="sql-explain"><command>EXPLAIN</command></link></title>
<itemizedlist>
</sect4>
<sect4>
- <title><link linkend="SQL-VACUUM"><command>VACUUM</command></link></title>
+ <title><link linkend="sql-vacuum"><command>VACUUM</command></link></title>
<itemizedlist>
<listitem>
<para>
Add additional details to the output of <link
- linkend="SQL-VACUUM"><command>VACUUM FULL VERBOSE</command></link>
- and <link linkend="SQL-CLUSTER"><command>CLUSTER VERBOSE</command></link>
+ linkend="sql-vacuum"><command>VACUUM FULL VERBOSE</command></link>
+ and <link linkend="sql-cluster"><command>CLUSTER VERBOSE</command></link>
(Itagaki Takahiro)
</para>
</sect4>
<sect4>
- <title><link linkend="SQL-CLUSTER"><command>CLUSTER</command></link></title>
+ <title><link linkend="sql-cluster"><command>CLUSTER</command></link></title>
<itemizedlist>
<listitem>
<para>
Add nearest-neighbor (order-by-operator) searching to <link
- linkend="GiST"><acronym>GiST</acronym> indexes</link> (Teodor Sigaev, Tom Lane)
+ linkend="gist"><acronym>GiST</acronym> indexes</link> (Teodor Sigaev, Tom Lane)
</para>
<para>
<listitem>
<para>
- Allow <link linkend="GIN"><acronym>GIN</acronym> indexes</link> to index null
+ Allow <link linkend="gin"><acronym>GIN</acronym> indexes</link> to index null
and empty values (Tom Lane)
</para>
<listitem>
<para>
- Allow <link linkend="GIN"><acronym>GIN</acronym> indexes</link> to
+ Allow <link linkend="gin"><acronym>GIN</acronym> indexes</link> to
better recognize duplicate search entries (Tom Lane)
</para>
<listitem>
<para>
- Fix <link linkend="GiST"><acronym>GiST</acronym> indexes</link> to be fully
+ Fix <link linkend="gist"><acronym>GiST</acronym> indexes</link> to be fully
crash-safe (Heikki Linnakangas)
</para>
<listitem>
<para>
- Support <link linkend="SQL-CREATETRIGGER"><literal>INSTEAD
+ Support <link linkend="sql-createtrigger"><literal>INSTEAD
OF</literal></link> triggers on views (Dean Rasheed)
</para>
</itemizedlist>
<sect4>
- <title><link linkend="APP-PSQL"><application>psql</application></link></title>
+ <title><link linkend="app-psql"><application>psql</application></link></title>
<itemizedlist>
</sect4>
<sect4>
- <title><link linkend="APP-PGDUMP"><application>pg_dump</application></link></title>
+ <title><link linkend="app-pgdump"><application>pg_dump</application></link></title>
<itemizedlist>
<listitem>
<para>
- Add <link linkend="APP-PGDUMP"><application>pg_dump</application></link>
+ Add <link linkend="app-pgdump"><application>pg_dump</application></link>
and <link
- linkend="APP-PG-DUMPALL"><application>pg_dumpall</application></link>
+ linkend="app-pg-dumpall"><application>pg_dumpall</application></link>
option <option>--quote-all-identifiers</option> to force quoting
of all identifiers (Robert Haas)
</para>
</sect4>
<sect4>
- <title><link linkend="APP-PG-CTL"><application>pg_ctl</application></link></title>
+ <title><link linkend="app-pg-ctl"><application>pg_ctl</application></link></title>
<itemizedlist>
<para>
This uses the new <link
- linkend="SQL-SECURITY-LABEL"><command>SECURITY LABEL</command></link>
+ linkend="sql-security-label"><command>SECURITY LABEL</command></link>
facility.
</para>
</listitem>
<listitem>
<para>
Merge documentation for <command>CREATE CONSTRAINT TRIGGER</command> and <link
- linkend="SQL-CREATETRIGGER"><command>CREATE TRIGGER</command></link>
+ linkend="sql-createtrigger"><command>CREATE TRIGGER</command></link>
(Alvaro Herrera)
</para>
</listitem>
<listitem>
<para>
- Add the <link linkend="SPGiST">SP-GiST</link> (Space-Partitioned
+ Add the <link linkend="spgist">SP-GiST</link> (Space-Partitioned
GiST) index access method
</para>
</listitem>
<listitem>
<para>
Add a <link
- linkend="SQL-CREATEVIEW"><literal>security_barrier</literal></link>
+ linkend="sql-createview"><literal>security_barrier</literal></link>
option for views
</para>
</listitem>
<listitem>
<para>
- Prevent <link linkend="SQL-ALTERDOMAIN"><command>ALTER
+ Prevent <link linkend="sql-alterdomain"><command>ALTER
DOMAIN</command></link> from working on non-domain types (Peter
Eisentraut)
</para>
<listitem>
<para>
No longer forcibly lowercase procedural language names in <link
- linkend="SQL-CREATEFUNCTION"><command>CREATE FUNCTION</command></link>
+ linkend="sql-createfunction"><command>CREATE FUNCTION</command></link>
(Robert Haas)
</para>
<para>
Provide consistent backquote, variable
expansion, and quoted substring behavior in <link
- linkend="APP-PSQL"><application>psql</application></link> meta-command
+ linkend="app-psql"><application>psql</application></link> meta-command
arguments (Tom Lane)
</para>
<listitem>
<para>
No longer treat <link
- linkend="APP-CLUSTERDB"><application>clusterdb</application></link>
+ linkend="app-clusterdb"><application>clusterdb</application></link>
table names as double-quoted; no longer treat <link
- linkend="APP-REINDEXDB"><application>reindexdb</application></link> table
+ linkend="app-reindexdb"><application>reindexdb</application></link> table
and index names as double-quoted (Bruce Momjian)
</para>
<listitem>
<para>
- <link linkend="APP-CREATEUSER"><application>createuser</application></link>
+ <link linkend="app-createuser"><application>createuser</application></link>
no longer prompts for option settings by default (Peter Eisentraut)
</para>
<listitem>
<para>
Disable prompting for the user name in <link
- linkend="APP-DROPUSER"><application>dropuser</application></link> unless
+ linkend="app-dropuser"><application>dropuser</application></link> unless
<option>--interactive</option> is specified (Peter Eisentraut)
</para>
</listitem>
<listitem>
<para>
- Add the <link linkend="SPGiST">SP-GiST</link> (Space-Partitioned
+ Add the <link linkend="spgist">SP-GiST</link> (Space-Partitioned
GiST) index access method (Teodor Sigaev, Oleg Bartunov, Tom
Lane)
</para>
<listitem>
<para>
Add <literal>CONCURRENTLY</literal> option to <link
- linkend="SQL-DROPINDEX"><command>DROP INDEX</command></link>
+ linkend="sql-dropindex"><command>DROP INDEX</command></link>
(Simon Riggs)
</para>
<listitem>
<para>
- Add the ability to <link linkend="SQL-ALTERTABLE">rename</link>
+ Add the ability to <link linkend="sql-altertable">rename</link>
constraints (Peter Eisentraut)
</para>
</listitem>
<listitem>
<para>
Reduce need to rebuild tables and indexes for certain <link
- linkend="SQL-ALTERTABLE"><command>ALTER TABLE</command></link>
+ linkend="sql-altertable"><command>ALTER TABLE</command></link>
... <literal>ALTER COLUMN TYPE</literal> operations (Noah Misch)
</para>
<listitem>
<para>
- Avoid having <link linkend="SQL-ALTERTABLE"><command>ALTER
+ Avoid having <link linkend="sql-altertable"><command>ALTER
TABLE</command></link> revalidate foreign key constraints in some
cases where it is not necessary (Noah Misch)
</para>
<listitem>
<para>
- Add <link linkend="SQL-ALTERFOREIGNDATAWRAPPER"><command>ALTER
+ Add <link linkend="sql-alterforeigndatawrapper"><command>ALTER
FOREIGN DATA WRAPPER</command></link> ... <literal>RENAME</literal>
- and <link linkend="SQL-ALTERSERVER"><command>ALTER
+ and <link linkend="sql-alterserver"><command>ALTER
SERVER</command></link> ... <literal>RENAME</literal> (Peter Eisentraut)
</para>
</listitem>
<listitem>
<para>
- Add <link linkend="SQL-ALTERDOMAIN"><command>ALTER
+ Add <link linkend="sql-alterdomain"><command>ALTER
DOMAIN</command></link> ... <literal>RENAME</literal> (Peter Eisentraut)
</para>
</sect4>
<sect4>
- <title><link linkend="SQL-CREATETABLE"><command>CREATE TABLE</command></link></title>
+ <title><link linkend="sql-createtable"><command>CREATE TABLE</command></link></title>
<itemizedlist>
<listitem>
<para>
Add a <link
- linkend="SQL-CREATEVIEW"><literal>security_barrier</literal></link>
+ linkend="sql-createview"><literal>security_barrier</literal></link>
option for views (KaiGai Kohei, Robert Haas)
</para>
<listitem>
<para>
Add a new <link
- linkend="SQL-CREATEFUNCTION"><literal>LEAKPROOF</literal></link> function
+ linkend="sql-createfunction"><literal>LEAKPROOF</literal></link> function
attribute to mark functions that can safely be pushed down
into <literal>security_barrier</literal> views (KaiGai Kohei)
</para>
<listitem>
<para>
- Allow <link linkend="SQL-VACUUM"><command>VACUUM</command></link> to more
+ Allow <link linkend="sql-vacuum"><command>VACUUM</command></link> to more
easily skip pages that cannot be locked (Simon Riggs, Robert Haas)
</para>
<listitem>
<para>
- Make <link linkend="SQL-EXPLAIN"><command>EXPLAIN</command></link>
+ Make <link linkend="sql-explain"><command>EXPLAIN</command></link>
<literal>(BUFFERS)</literal> count blocks dirtied and written (Robert Haas)
</para>
</listitem>
<listitem>
<para>
- Allow <link linkend="SQL-CREATEDOMAIN">domains</link> to be
+ Allow <link linkend="sql-createdomain">domains</link> to be
declared <literal>NOT VALID</literal> (Álvaro Herrera)
</para>
database state.
Snapshots are exported via <link
linkend="functions-snapshot-synchronization"><function>pg_export_snapshot()</function></link>
- and imported via <link linkend="SQL-SET-TRANSACTION"><command>SET
+ and imported via <link linkend="sql-set-transaction"><command>SET
TRANSACTION SNAPSHOT</command></link>. Only snapshots from
currently-running transactions can be imported.
</para>
<listitem>
<para>
- Add <link linkend="APP-INITDB"><application>initdb</application></link>
+ Add <link linkend="app-initdb"><application>initdb</application></link>
options <option>--auth-local</option> and <option>--auth-host</option>
(Peter Eisentraut)
</para>
<listitem>
<para>
Add <option>--replication</option>/<option>--no-replication</option> flags to
- <link linkend="APP-CREATEUSER"><application>createuser</application></link>
+ <link linkend="app-createuser"><application>createuser</application></link>
to control replication permission (Fujii Masao)
</para>
</listitem>
<listitem>
<para>
Add the <option>--if-exists</option> option to <link
- linkend="APP-DROPDB"><application>dropdb</application></link> and <link
- linkend="APP-DROPUSER"><application>dropuser</application></link> (Josh
+ linkend="app-dropdb"><application>dropdb</application></link> and <link
+ linkend="app-dropuser"><application>dropuser</application></link> (Josh
Kupershmidt)
</para>
</listitem>
</itemizedlist>
<sect4>
- <title><link linkend="APP-PSQL"><application>psql</application></link></title>
+ <title><link linkend="app-psql"><application>psql</application></link></title>
<itemizedlist>
<para>
In <application>psql</application> tab completion, complete <acronym>SQL</acronym>
keywords in either upper or lower case according to the new <link
- linkend="APP-PSQL-variables"><literal>COMP_KEYWORD_CASE</literal></link>
+ linkend="app-psql-variables"><literal>COMP_KEYWORD_CASE</literal></link>
setting (Peter Eisentraut)
</para>
</listitem>
</sect4>
<sect4>
- <title><link linkend="APP-PGDUMP"><application>pg_dump</application></link></title>
+ <title><link linkend="app-pgdump"><application>pg_dump</application></link></title>
<itemizedlist>
<listitem>
<para>
Make <link
- linkend="APP-PG-DUMPALL"><application>pg_dumpall</application></link> dump all
+ linkend="app-pg-dumpall"><application>pg_dumpall</application></link> dump all
roles first, then all configuration settings on roles (Phil Sorber)
</para>
<listitem>
<para>
- Add <link linkend="SQL-CREATEMATERIALIZEDVIEW">materialized
+ Add <link linkend="sql-creatematerializedview">materialized
views</link>
</para>
</listitem>
<listitem>
<para>
Make simple views <link
- linkend="SQL-CREATEVIEW-updatable-views">auto-updatable</link>
+ linkend="sql-createview-updatable-views">auto-updatable</link>
</para>
</listitem>
<listitem>
<para>
- Allow <link linkend="SQL-CREATEFOREIGNDATAWRAPPER">foreign data
+ Allow <link linkend="sql-createforeigndatawrapper">foreign data
wrappers</link> to support writes (inserts/updates/deletes) on foreign
tables
</para>
<para>
A dump/restore using <link
- linkend="APP-PG-DUMPALL"><application>pg_dumpall</application></link>, or use
+ linkend="app-pg-dumpall"><application>pg_dumpall</application></link>, or use
of <link linkend="pgupgrade"><application>pg_upgrade</application></link>, is
required for those wishing to migrate data from any previous release.
</para>
<listitem>
<para>
- Change multicolumn <link linkend="SQL-CREATETABLE"><literal>ON UPDATE
+ Change multicolumn <link linkend="sql-createtable"><literal>ON UPDATE
SET NULL/SET DEFAULT</literal></link> foreign key actions to affect
all columns of the constraint, not just those changed in the
<command>UPDATE</command> (Tom Lane)
<listitem>
<para>
- Allow <link linkend="GiST"><acronym>GiST</acronym></link> indexes to be
+ Allow <link linkend="gist"><acronym>GiST</acronym></link> indexes to be
unlogged (Jeevan Chalke)
</para>
</listitem>
<listitem>
<para>
- Add <link linkend="SQL-COPY"><command>COPY FREEZE</command></link>
+ Add <link linkend="sql-copy"><command>COPY FREEZE</command></link>
option to avoid the overhead of marking tuples as frozen later
(Simon Riggs, Jeff Davis)
</para>
<listitem>
<para>
Improve performance of the <link
- linkend="SQL-CREATETABLE"><command>CREATE TEMPORARY TABLE ... ON
+ linkend="sql-createtable"><command>CREATE TEMPORARY TABLE ... ON
COMMIT DELETE ROWS</command></link> option by not truncating such temporary
tables in transactions that haven't touched any temporary tables
(Heikki Linnakangas)
<para>
The checksum option can be set during <link
- linkend="APP-INITDB">initdb</link>.
+ linkend="app-initdb">initdb</link>.
</para>
</listitem>
<listitem>
<para>
Increase the maximum <link
- linkend="APP-INITDB">initdb</link>-configured value for <link
+ linkend="app-initdb">initdb</link>-configured value for <link
linkend="guc-shared-buffers"><varname>shared_buffers</varname></link>
to 128MB (Robert Haas)
</para>
<listitem>
<para>
Add the last checkpoint's redo location to <link
- linkend="APP-PGCONTROLDATA"><application>pg_controldata</application></link>'s
+ linkend="app-pgcontroldata"><application>pg_controldata</application></link>'s
output (Fujii Masao)
</para>
<listitem>
<para>
Add support for piping <link
- linkend="SQL-COPY"><command>COPY</command></link> and <link
- linkend="APP-PSQL"><application>psql</application></link> <command>\copy</command>
+ linkend="sql-copy"><command>COPY</command></link> and <link
+ linkend="app-psql"><application>psql</application></link> <command>\copy</command>
data to/from an external program (Etsuro Fujita)
</para>
</listitem>
<listitem>
<para>
Allow a multirow <link
- linkend="SQL-VALUES"><literal>VALUES</literal></link> clause in a rule
+ linkend="sql-values"><literal>VALUES</literal></link> clause in a rule
to reference <literal>OLD</literal>/<literal>NEW</literal> (Tom Lane)
</para>
</listitem>
<listitem>
<para>
- Allow <link linkend="SQL-CREATEFOREIGNDATAWRAPPER">foreign data
+ Allow <link linkend="sql-createforeigndatawrapper">foreign data
wrappers</link> to support writes (inserts/updates/deletes) on foreign
tables (KaiGai Kohei)
</para>
<listitem>
<para>
- Add <link linkend="SQL-CREATESCHEMA"><command>CREATE SCHEMA ... IF
+ Add <link linkend="sql-createschema"><command>CREATE SCHEMA ... IF
NOT EXISTS</command></link> clause (Fabrízio de Royes Mello)
</para>
</listitem>
<listitem>
<para>
- Make <link linkend="SQL-REASSIGN-OWNED"><command>REASSIGN
+ Make <link linkend="sql-reassign-owned"><command>REASSIGN
OWNED</command></link> also change ownership of shared objects
(Álvaro Herrera)
</para>
<listitem>
<para>
- Suppress <link linkend="SQL-CREATETABLE"><command>CREATE
+ Suppress <link linkend="sql-createtable"><command>CREATE
TABLE</command></link>'s messages about implicit index and sequence creation
(Robert Haas)
</para>
<listitem>
<para>
- Allow <link linkend="SQL-DROPTABLE"><command>DROP TABLE IF
+ Allow <link linkend="sql-droptable"><command>DROP TABLE IF
EXISTS</command></link> to succeed when a non-existent schema is specified
in the table name (Bruce Momjian)
</para>
<listitem>
<para>
Support <literal>IF NOT EXISTS</literal> option in <link
- linkend="SQL-ALTERTYPE"><command>ALTER TYPE ... ADD VALUE</command></link>
+ linkend="sql-altertype"><command>ALTER TYPE ... ADD VALUE</command></link>
(Andrew Dunstan)
</para>
<listitem>
<para>
- Add <link linkend="SQL-ALTERROLE"><command>ALTER ROLE ALL
+ Add <link linkend="sql-alterrole"><command>ALTER ROLE ALL
SET</command></link> to establish settings for all users (Peter Eisentraut)
</para>
<para>
This allows settings to apply to all users in all databases. <link
- linkend="SQL-ALTERDATABASE"><command>ALTER DATABASE SET</command></link>
+ linkend="sql-alterdatabase"><command>ALTER DATABASE SET</command></link>
already allowed addition of settings for all users in a single
database. <filename>postgresql.conf</filename> has a similar effect.
</para>
<listitem>
<para>
- Add support for <link linkend="SQL-ALTERRULE"><command>ALTER RULE
+ Add support for <link linkend="sql-alterrule"><command>ALTER RULE
... RENAME</command></link> (Ali Dar)
</para>
</listitem>
<listitem>
<para>
- Add <link linkend="SQL-CREATEMATERIALIZEDVIEW">materialized
+ Add <link linkend="sql-creatematerializedview">materialized
views</link> (Kevin Grittner)
</para>
<listitem>
<para>
Make simple views <link
- linkend="SQL-CREATEVIEW-updatable-views">auto-updatable</link>
+ linkend="sql-createview-updatable-views">auto-updatable</link>
(Dean Rasheed)
</para>
Simple views that reference some or all columns from a
single base table are now updatable by default. More
complex views can be made updatable using <link
- linkend="SQL-CREATETRIGGER"><literal>INSTEAD OF</literal></link> triggers
- or <link linkend="SQL-CREATERULE"><literal>INSTEAD</literal></link> rules.
+ linkend="sql-createtrigger"><literal>INSTEAD OF</literal></link> triggers
+ or <link linkend="sql-createrule"><literal>INSTEAD</literal></link> rules.
</para>
</listitem>
<listitem>
<para>
- Add <link linkend="SQL-CREATEVIEW"><command>CREATE RECURSIVE
+ Add <link linkend="sql-createview"><command>CREATE RECURSIVE
VIEW</command></link> syntax (Peter Eisentraut)
</para>
<listitem>
<para>
- Increase the maximum size of <link linkend="largeObjects">large
+ Increase the maximum size of <link linkend="largeobjects">large
objects</link> from 2GB to 4TB (Nozomi Anzai, Yugo Nagata)
</para>
<para>
This reduces line length in view printing, for instance in <link
- linkend="APP-PGDUMP"><application>pg_dump</application></link> output.
+ linkend="app-pgdump"><application>pg_dump</application></link> output.
</para>
</listitem>
<listitem>
<para>
Allow PL/pgSQL to access the number of rows processed by
- <link linkend="SQL-COPY"><command>COPY</command></link> (Pavel Stehule)
+ <link linkend="sql-copy"><command>COPY</command></link> (Pavel Stehule)
</para>
<para>
<listitem>
<para>
Allow <acronym>SPI</acronym> functions to access the number of rows processed
- by <link linkend="SQL-COPY"><command>COPY</command></link> (Pavel Stehule)
+ by <link linkend="sql-copy"><command>COPY</command></link> (Pavel Stehule)
</para>
</listitem>
<listitem>
<para>
Support multiple <option>--table</option> arguments for <link
- linkend="APP-PGRESTORE"><application>pg_restore</application></link>,
- <link linkend="APP-CLUSTERDB"><application>clusterdb</application></link>,
- <link linkend="APP-REINDEXDB"><application>reindexdb</application></link>,
- and <link linkend="APP-VACUUMDB"><application>vacuumdb</application></link>
+ linkend="app-pgrestore"><application>pg_restore</application></link>,
+ <link linkend="app-clusterdb"><application>clusterdb</application></link>,
+ <link linkend="app-reindexdb"><application>reindexdb</application></link>,
+ and <link linkend="app-vacuumdb"><application>vacuumdb</application></link>
(Josh Kupershmidt)
</para>
<para>
This is similar to the way <link
- linkend="APP-PGDUMP"><application>pg_dump</application></link>'s
+ linkend="app-pgdump"><application>pg_dump</application></link>'s
<option>--table</option> option works.
</para>
</listitem>
<listitem>
<para>
Add <option>--dbname</option> option to <link
- linkend="APP-PG-DUMPALL"><application>pg_dumpall</application></link>, <link
+ linkend="app-pg-dumpall"><application>pg_dumpall</application></link>, <link
linkend="app-pgbasebackup"><application>pg_basebackup</application></link>, and
<link
linkend="app-pgreceivewal"><application>pg_receivexlog</application></link>
</itemizedlist>
<sect4>
- <title><link linkend="APP-PSQL"><application>psql</application></link></title>
+ <title><link linkend="app-psql"><application>psql</application></link></title>
<itemizedlist>
</itemizedlist>
<sect5>
- <title><link linkend="APP-PSQL-meta-commands">Backslash Commands</link></title>
+ <title><link linkend="app-psql-meta-commands">Backslash Commands</link></title>
<itemizedlist>
</sect4>
<sect4>
- <title><link linkend="APP-PGDUMP"><application>pg_dump</application></link></title>
+ <title><link linkend="app-pgdump"><application>pg_dump</application></link></title>
<itemizedlist>
</sect4>
<sect4>
- <title><link linkend="APP-INITDB"><application>initdb</application></link></title>
+ <title><link linkend="app-initdb"><application>initdb</application></link></title>
<itemizedlist>
<listitem>
<para>
Add isolation tests for <link
- linkend="SQL-CREATEINDEX"><command>CREATE INDEX
+ linkend="sql-createindex"><command>CREATE INDEX
CONCURRENTLY</command></link> (Abhijit Menon-Sen)
</para>
</listitem>
<listitem>
<para>
- Add new <acronym>SQL</acronym> command <xref linkend="SQL-ALTERSYSTEM">
+ Add new <acronym>SQL</acronym> command <xref linkend="sql-altersystem">
for changing <filename>postgresql.conf</filename> configuration file entries
</para>
</listitem>
<listitem>
<para>
- Reduce lock strength for some <xref linkend="SQL-ALTERTABLE">
+ Reduce lock strength for some <xref linkend="sql-altertable">
commands
</para>
</listitem>
<listitem>
<para>
- Rename <link linkend="SQL-EXPLAIN"><command>EXPLAIN
+ Rename <link linkend="sql-explain"><command>EXPLAIN
ANALYZE</command></link>'s <quote>total runtime</quote> output
to <quote>execution time</quote> (Tom Lane)
</para>
<listitem>
<para>
- <link linkend="SQL-SHOW"><command>SHOW TIME ZONE</command></link> now
+ <link linkend="sql-show"><command>SHOW TIME ZONE</command></link> now
outputs simple numeric UTC offsets in <acronym>POSIX</acronym> timezone
format (Tom Lane)
</para>
<listitem>
<para>
- Make <xref linkend="SQL-VACUUM"> properly report dead but
+ Make <xref linkend="sql-vacuum"> properly report dead but
not-yet-removable rows to the statistics collector (Hari Babu)
</para>
<listitem>
<para>
- Reduce <link linkend="GIN"><acronym>GIN</acronym></link> index size
+ Reduce <link linkend="gin"><acronym>GIN</acronym></link> index size
(Alexander Korotkov, Heikki Linnakangas)
</para>
<para>
Indexes upgraded via <xref linkend="pgupgrade"> will work fine
but will still be in the old, larger <acronym>GIN</acronym> format.
- Use <xref linkend="SQL-REINDEX"> to recreate old GIN indexes in the
+ Use <xref linkend="sql-reindex"> to recreate old GIN indexes in the
new format.
</para>
</listitem>
<listitem>
<para>
Improve speed of multi-key <link
- linkend="GIN"><acronym>GIN</acronym></link> lookups (Alexander Korotkov,
+ linkend="gin"><acronym>GIN</acronym></link> lookups (Alexander Korotkov,
Heikki Linnakangas)
</para>
</listitem>
<listitem>
<para>
- Add <link linkend="GiST"><acronym>GiST</acronym></link> index support
+ Add <link linkend="gist"><acronym>GiST</acronym></link> index support
for <link linkend="datatype-inet"><type>inet</type></link> and
<link linkend="datatype-cidr"><type>cidr</type></link> data types
(Emre Hasegeli)
<para>
Attempt to <link linkend="vacuum-for-wraparound">freeze</link>
tuples when tables are rewritten with <xref
- linkend="SQL-CLUSTER"> or <link
- linkend="SQL-VACUUM"><command>VACUUM FULL</command></link> (Robert Haas,
+ linkend="sql-cluster"> or <link
+ linkend="sql-vacuum"><command>VACUUM FULL</command></link> (Robert Haas,
Andres Freund)
</para>
<listitem>
<para>
- Improve speed of <xref linkend="SQL-COPY"> with default <link
+ Improve speed of <xref linkend="sql-copy"> with default <link
linkend="functions-sequence-table"><function>nextval()</function></link>
columns (Simon Riggs)
</para>
<listitem>
<para>
Improve speed of accessing many different <link
- linkend="SQL-CREATESEQUENCE">sequences</link> in the same session
+ linkend="sql-createsequence">sequences</link> in the same session
(David Rowley)
</para>
</listitem>
<listitem>
<para>
Reduce memory allocated by <application>PL/pgSQL</application>
- <xref linkend="SQL-DO"> blocks (Tom Lane)
+ <xref linkend="sql-do"> blocks (Tom Lane)
</para>
</listitem>
<listitem>
<para>
- Add new <acronym>SQL</acronym> command <xref linkend="SQL-ALTERSYSTEM">
+ Add new <acronym>SQL</acronym> command <xref linkend="sql-altersystem">
for changing <filename>postgresql.conf</filename> configuration file entries
(Amit Kapila)
</para>
<listitem>
<para>
Add relation option <link
- linkend="SQL-CREATETABLE-storage-parameters"><option>user_catalog_table</option></link>
+ linkend="sql-createtable-storage-parameters"><option>user_catalog_table</option></link>
to identify user-created tables involved in logical change-set
encoding (Andres Freund)
</para>
<listitem>
<para>
- Allow <xref linkend="SQL-SELECT"> to have
+ Allow <xref linkend="sql-select"> to have
an empty target list (Tom Lane)
</para>
<listitem>
<para>
- Ensure that <link linkend="SQL-SELECT"><literal>SELECT ... FOR UPDATE
+ Ensure that <link linkend="sql-select"><literal>SELECT ... FOR UPDATE
NOWAIT</literal></link> does not wait in corner cases involving
already-concurrently-updated tuples (Craig Ringer and Thomas Munro)
</para>
<listitem>
<para>
- Add <link linkend="SQL-DISCARD"><command>DISCARD
+ Add <link linkend="sql-discard"><command>DISCARD
SEQUENCES</command></link> command to discard cached sequence-related state
(Fabrízio de Royes Mello, Robert Haas)
</para>
<listitem>
<para>
Add <literal>FORCE NULL</literal> option
- to <link linkend="SQL-COPY"><command>COPY FROM</command></link>, which
+ to <link linkend="sql-copy"><command>COPY FROM</command></link>, which
causes quoted strings matching the specified null string to be
converted to NULLs in <literal>CSV</literal> mode (Ian Barwick, Michael
Paquier)
</itemizedlist>
<sect4>
- <title><xref linkend="SQL-EXPLAIN"></title>
+ <title><xref linkend="sql-explain"></title>
<itemizedlist>
<para>
This is done with <link
- linkend="SQL-REFRESHMATERIALIZEDVIEW"><command>REFRESH MATERIALIZED
+ linkend="sql-refreshmaterializedview"><command>REFRESH MATERIALIZED
VIEW CONCURRENTLY</command></link>.
</para>
</listitem>
<listitem>
<para>
Allow views to be <link
- linkend="SQL-CREATEVIEW-updatable-views">automatically
+ linkend="sql-createview-updatable-views">automatically
updated</link> even if they contain some non-updatable columns
(Dean Rasheed)
</para>
</para>
<para>
- This is controlled with the new <xref linkend="SQL-CREATEVIEW">
+ This is controlled with the new <xref linkend="sql-createview">
clause <literal>WITH CHECK OPTION</literal>.
</para>
</listitem>
<listitem>
<para>
- Support triggers on <link linkend="SQL-CREATEFOREIGNTABLE">foreign
+ Support triggers on <link linkend="sql-createforeigntable">foreign
tables</link> (Ronan Dunklau)
</para>
</listitem>
<para>
Allow moving groups of objects from one tablespace to another
using the <literal>ALL IN TABLESPACE ... SET TABLESPACE</literal> form of
- <xref linkend="SQL-ALTERTABLE">, <xref linkend="SQL-ALTERINDEX">, or
- <xref linkend="SQL-ALTERMATERIALIZEDVIEW"> (Stephen Frost)
+ <xref linkend="sql-altertable">, <xref linkend="sql-alterindex">, or
+ <xref linkend="sql-altermaterializedview"> (Stephen Frost)
</para>
</listitem>
<listitem>
<para>
Allow changing foreign key constraint deferrability
- via <xref linkend="SQL-ALTERTABLE"> ... <literal>ALTER
+ via <xref linkend="sql-altertable"> ... <literal>ALTER
CONSTRAINT</literal> (Simon Riggs)
</para>
</listitem>
<listitem>
<para>
- Reduce lock strength for some <xref linkend="SQL-ALTERTABLE">
+ Reduce lock strength for some <xref linkend="sql-altertable">
commands
(Simon Riggs, Noah Misch, Robert Haas)
</para>
<listitem>
<para>
Allow tablespace options to be set
- in <xref linkend="SQL-CREATETABLESPACE"> (Vik Fearing)
+ in <xref linkend="sql-createtablespace"> (Vik Fearing)
</para>
<para>
Formerly these options could only be set
- via <xref linkend="SQL-ALTERTABLESPACE">.
+ via <xref linkend="sql-altertablespace">.
</para>
</listitem>
<listitem>
<para>
- Allow <xref linkend="SQL-CREATEAGGREGATE"> to define the estimated
+ Allow <xref linkend="sql-createaggregate"> to define the estimated
size of the aggregate's transition state data (Hadi Moshayedi)
</para>
<listitem>
<para>
- Add <xref linkend="APP-CREATEUSER"> option <option>-g</option>
+ Add <xref linkend="app-createuser"> option <option>-g</option>
to specify role membership (Christopher Browne)
</para>
</listitem>
<listitem>
<para>
- Add <xref linkend="APP-VACUUMDB">
+ Add <xref linkend="app-vacuumdb">
option <option>--analyze-in-stages</option> to analyze in stages of
increasing granularity (Peter Eisentraut)
</para>
</itemizedlist>
<sect4>
- <title><xref linkend="APP-PSQL"></title>
+ <title><xref linkend="app-psql"></title>
<itemizedlist>
<listitem>
<para>
Suppress <quote>No rows</quote> output in <application>psql</application> <link
- linkend="APP-PSQL-meta-commands"><option>expanded</option></link>
+ linkend="app-psql-meta-commands"><option>expanded</option></link>
mode when the footer is disabled (Bruce Momjian)
</para>
</listitem>
</itemizedlist>
<sect5>
- <title><link linkend="APP-PSQL-meta-commands">Backslash Commands</link></title>
+ <title><link linkend="app-psql-meta-commands">Backslash Commands</link></title>
<itemizedlist>
</sect4>
<sect4>
- <title><xref linkend="APP-PGDUMP"></title>
+ <title><xref linkend="app-pgdump"></title>
<itemizedlist>
<listitem>
<para>
- Allow <xref linkend="APP-PGRESTORE"> options
+ Allow <xref linkend="app-pgrestore"> options
<option>-I</option>, <option>-P</option>, <option>-T</option> and <option>-n</option>
to be specified multiple times (Heikki Linnakangas)
</para>
<para>
This change prevents unnecessary errors when removing old objects.
The new <option>--if-exists</option> option
- for <xref linkend="APP-PGDUMP">, <xref linkend="APP-PG-DUMPALL">,
- and <xref linkend="APP-PGRESTORE"> is only available
+ for <xref linkend="app-pgdump">, <xref linkend="app-pg-dumpall">,
+ and <xref linkend="app-pgrestore"> is only available
when <option>--clean</option> is also specified.
</para>
</listitem>
<listitem>
<para>
- Add <link linkend="BRIN">Block Range Indexes</link> (<acronym>BRIN</acronym>)
+ Add <link linkend="brin">Block Range Indexes</link> (<acronym>BRIN</acronym>)
</para>
</listitem>
2015-05-15 [b0b7be6] Alvaro..: Add BRIN infrastructure for "inclusion" opclasses
-->
<para>
- Add <link linkend="BRIN">Block Range Indexes</link> (<acronym>BRIN</acronym>)
+ Add <link linkend="brin">Block Range Indexes</link> (<acronym>BRIN</acronym>)
(Álvaro Herrera)
</para>
<para>
Allow queries to perform accurate distance filtering of
bounding-box-indexed objects (polygons, circles) using <link
- linkend="GiST">GiST</link> indexes (Alexander Korotkov, Heikki
+ linkend="gist">GiST</link> indexes (Alexander Korotkov, Heikki
Linnakangas)
</para>
2015-03-30 [0633a60] Heikki..: Add index-only scan support to range type GiST ..
-->
<para>
- Allow <link linkend="GiST">GiST</link> indexes to perform index-only
+ Allow <link linkend="gist">GiST</link> indexes to perform index-only
scans (Anastasia Lubennikova, Heikki Linnakangas, Andreas Karlsson)
</para>
</listitem>
2014-09-02 [bd3b7a9] Fujii ..: Support ALTER SYSTEM RESET command.
-->
<para>
- Allow <link linkend="SQL-ALTERSYSTEM"><command>ALTER SYSTEM</command></link>
+ Allow <link linkend="sql-altersystem"><command>ALTER SYSTEM</command></link>
values to be reset with <command>ALTER SYSTEM RESET</command> (Vik
Fearing)
</para>
-->
<para>
Allow setting multiple target columns in
- an <link linkend="SQL-UPDATE"><command>UPDATE</command></link> from the result of
+ an <link linkend="sql-update"><command>UPDATE</command></link> from the result of
a single sub-SELECT (Tom Lane)
</para>
2014-10-07 [df630b0] Alvaro..: Implement SKIP LOCKED for row-level locks
-->
<para>
- Add <link linkend="SQL-SELECT"><command>SELECT</command></link> option
+ Add <link linkend="sql-select"><command>SELECT</command></link> option
<literal>SKIP LOCKED</literal> to skip locked rows (Thomas Munro)
</para>
2015-05-15 [f6d208d] Simon ..: TABLESAMPLE, SQL Standard and extensible
-->
<para>
- Add <link linkend="SQL-SELECT"><command>SELECT</command></link> option
+ Add <link linkend="sql-select"><command>SELECT</command></link> option
<literal>TABLESAMPLE</literal> to return a subset of a table (Petr
Jelínek)
</para>
-->
<para>
Add more details about sort ordering in <link
- linkend="SQL-EXPLAIN"><command>EXPLAIN</command></link> output (Marius Timmer,
+ linkend="sql-explain"><command>EXPLAIN</command></link> output (Marius Timmer,
Lukas Kreft, Arne Scheffer)
</para>
2014-12-18 [35192f0] Alvaro..: Have VACUUM log number of skipped pages due to ..
-->
<para>
- Make <link linkend="SQL-VACUUM"><command>VACUUM</command></link> log the
+ Make <link linkend="sql-vacuum"><command>VACUUM</command></link> log the
number of pages skipped due to pins (Jim Nasby)
</para>
</listitem>
2015-02-20 [d42358e] Alvaro..: Have TRUNCATE update pgstat tuple counters
-->
<para>
- Make <link linkend="SQL-TRUNCATE"><command>TRUNCATE</command></link> properly
+ Make <link linkend="sql-truncate"><command>TRUNCATE</command></link> properly
update the <literal>pg_stat</literal>* tuple counters (Alexander Shulgin)
</para>
</listitem>
</itemizedlist>
<sect4>
- <title><xref linkend="SQL-REINDEX"></title>
+ <title><xref linkend="sql-reindex"></title>
<itemizedlist>
<para>
This feature allows row-by-row control over which users can add,
modify, or even see rows in a table. This is controlled by new
- commands <link linkend="SQL-CREATEPOLICY"><command>CREATE</command></link>/<link
- linkend="SQL-ALTERPOLICY"><command>ALTER</command></link>/<link
- linkend="SQL-DROPPOLICY"><command>DROP POLICY</command></link> and <link
- linkend="SQL-ALTERTABLE"><command>ALTER TABLE ... ENABLE/DISABLE
+ commands <link linkend="sql-createpolicy"><command>CREATE</command></link>/<link
+ linkend="sql-alterpolicy"><command>ALTER</command></link>/<link
+ linkend="sql-droppolicy"><command>DROP POLICY</command></link> and <link
+ linkend="sql-altertable"><command>ALTER TABLE ... ENABLE/DISABLE
ROW SECURITY</command></link>.
</para>
</listitem>
<para>
Allow changing of the <acronym>WAL</acronym>
logging status of a table after creation with <link
- linkend="SQL-ALTERTABLE"><command>ALTER TABLE ... SET LOGGED /
+ linkend="sql-altertable"><command>ALTER TABLE ... SET LOGGED /
UNLOGGED</command></link> (Fabrízio de Royes Mello)
</para>
</listitem>
-->
<para>
Add <literal>IF NOT EXISTS</literal> clause to <link
- linkend="SQL-CREATETABLEAS"><command>CREATE TABLE AS</command></link>,
- <link linkend="SQL-CREATEINDEX"><command>CREATE INDEX</command></link>,
- <link linkend="SQL-CREATESEQUENCE"><command>CREATE SEQUENCE</command></link>,
- and <link linkend="SQL-CREATEMATERIALIZEDVIEW"><command>CREATE
+ linkend="sql-createtableas"><command>CREATE TABLE AS</command></link>,
+ <link linkend="sql-createindex"><command>CREATE INDEX</command></link>,
+ <link linkend="sql-createsequence"><command>CREATE SEQUENCE</command></link>,
+ and <link linkend="sql-creatematerializedview"><command>CREATE
MATERIALIZED VIEW</command></link> (Fabrízio de Royes Mello)
</para>
</listitem>
-->
<para>
Add support for <literal>IF EXISTS</literal> to <link
- linkend="SQL-ALTERTABLE"><command>ALTER TABLE ... RENAME
+ linkend="sql-altertable"><command>ALTER TABLE ... RENAME
CONSTRAINT</command></link> (Bruce Momjian)
</para>
</listitem>
<para>
This feature is now supported in
- <xref linkend="SQL-ALTERUSER">, <xref linkend="SQL-ALTERGROUP">,
- <xref linkend="SQL-ALTERROLE">, <xref linkend="SQL-GRANT">,
+ <xref linkend="sql-alteruser">, <xref linkend="sql-altergroup">,
+ <xref linkend="sql-alterrole">, <xref linkend="sql-grant">,
and <command>ALTER <replaceable>object</replaceable> OWNER TO</command> commands.
</para>
</listitem>
2014-12-23 [7eca575] Alvaro..: get_object_address: separate domain constraints..
-->
<para>
- Support comments on <link linkend="SQL-CREATEDOMAIN">domain
+ Support comments on <link linkend="sql-createdomain">domain
constraints</link> (Álvaro Herrera)
</para>
</listitem>
2015-05-11 [fa26424] Stephe..: Allow LOCK TABLE .. ROW EXCLUSIVE MODE with IN..
-->
<para>
- Allow <link linkend="SQL-LOCK"><command>LOCK TABLE ... ROW EXCLUSIVE
+ Allow <link linkend="sql-lock"><command>LOCK TABLE ... ROW EXCLUSIVE
MODE</command></link> for those with <command>INSERT</command> privileges on the
target table (Stephen Frost)
</para>
-->
<para>
Allow <link
- linkend="SQL-CREATEDATABASE"><command>CREATE</command></link>/<link
- linkend="SQL-ALTERDATABASE"><command>ALTER DATABASE</command></link>
+ linkend="sql-createdatabase"><command>CREATE</command></link>/<link
+ linkend="sql-alterdatabase"><command>ALTER DATABASE</command></link>
to manipulate <structname>datistemplate</structname> and
<structname>datallowconn</structname> (Vik Fearing)
</para>
2014-07-10 [59efda3] Tom Lane: Implement IMPORT FOREIGN SCHEMA.
-->
<para>
- Add support for <xref linkend="SQL-IMPORTFOREIGNSCHEMA">
+ Add support for <xref linkend="sql-importforeignschema">
(Ronan Dunklau, Michael Paquier, Tom Lane)
</para>
-->
<para>
Allow event triggers on table rewrites caused by <link
- linkend="SQL-ALTERTABLE"><command>ALTER TABLE</command></link> (Dimitri
+ linkend="sql-altertable"><command>ALTER TABLE</command></link> (Dimitri
Fontaine)
</para>
</listitem>
-->
<para>
Add event trigger support for database-level <link
- linkend="SQL-COMMENT"><command>COMMENT</command></link>, <link
- linkend="SQL-SECURITY-LABEL"><command>SECURITY LABEL</command></link>,
- and <link linkend="SQL-GRANT"><command>GRANT</command></link>/<link
- linkend="SQL-REVOKE"><command>REVOKE</command></link> (Álvaro Herrera)
+ linkend="sql-comment"><command>COMMENT</command></link>, <link
+ linkend="sql-security-label"><command>SECURITY LABEL</command></link>,
+ and <link linkend="sql-grant"><command>GRANT</command></link>/<link
+ linkend="sql-revoke"><command>REVOKE</command></link> (Álvaro Herrera)
</para>
</listitem>
<para>
This change adds new commands <link
- linkend="SQL-CREATETRANSFORM"><command>CREATE</command></link>/<link
- linkend="SQL-DROPTRANSFORM"><command>DROP TRANSFORM</command></link>.
+ linkend="sql-createtransform"><command>CREATE</command></link>/<link
+ linkend="sql-droptransform"><command>DROP TRANSFORM</command></link>.
This also adds optional transformations between the <link
linkend="hstore"><application>hstore</application></link> and <link
linkend="ltree"><application>ltree</application></link> types to/from <link
2015-01-23 [a179232] Alvaro..: vacuumdb: enable parallel mode
-->
<para>
- Allow <link linkend="APP-VACUUMDB"><application>vacuumdb</application></link> to
+ Allow <link linkend="app-vacuumdb"><application>vacuumdb</application></link> to
vacuum in parallel using new <option>--jobs</option> option (Dilip Kumar)
</para>
</listitem>
2015-11-12 [5094da9] Alvaro..: vacuumdb: don't prompt for passwords over and ..
-->
<para>
- In <link linkend="APP-VACUUMDB"><application>vacuumdb</application></link>, do not
+ In <link linkend="app-vacuumdb"><application>vacuumdb</application></link>, do not
prompt for the same password repeatedly when multiple connections
are necessary (Haribabu Kommi, Michael Paquier)
</para>
-->
<para>
Add <option>--verbose</option> option to <link
- linkend="APP-REINDEXDB"><application>reindexdb</application></link> (Sawada
+ linkend="app-reindexdb"><application>reindexdb</application></link> (Sawada
Masahiko)
</para>
</listitem>
</itemizedlist>
<sect4>
- <title><xref linkend="APP-PSQL"></title>
+ <title><xref linkend="app-psql"></title>
<itemizedlist>
-->
<para>
Add new option <literal>%l</literal> in <application>psql</application>'s <link
- linkend="APP-PSQL-variables"><envar>PROMPT</envar></link> variables
+ linkend="app-psql-variables"><envar>PROMPT</envar></link> variables
to display the current multiline statement line number
(Sawada Masahiko)
</para>
-->
<para>
Add <literal>\pset</literal> option <link
- linkend="APP-PSQL-meta-commands"><varname>pager_min_lines</varname></link>
+ linkend="app-psql-meta-commands"><varname>pager_min_lines</varname></link>
to control pager invocation (Andrew Dunstan)
</para>
</listitem>
</itemizedlist>
<sect5>
- <title><link linkend="APP-PSQL-meta-commands">Backslash Commands</link></title>
+ <title><link linkend="app-psql-meta-commands">Backslash Commands</link></title>
<itemizedlist>
</sect4>
<sect4>
- <title><xref linkend="APP-PGDUMP"></title>
+ <title><xref linkend="app-pgdump"></title>
<itemizedlist>
2014-11-21 [3a82bc6] Heikki..: Add pageinspect functions for inspecting GIN in..
-->
<para>
- Add <link linkend="GIN"><acronym>GIN</acronym></link>
+ Add <link linkend="gin"><acronym>GIN</acronym></link>
index inspection functions to <link
linkend="pageinspect"><application>pageinspect</application></link> (Heikki
Linnakangas, Peter Geoghegan, Michael Paquier)
2015-09-02 [30bb26b5e] Allow usage of huge maintenance_work_mem for GIN build.
-->
<para>
- Allow <link linkend="GIN"><acronym>GIN</acronym></link> index builds to
+ Allow <link linkend="gin"><acronym>GIN</acronym></link> index builds to
make effective use of <xref linkend="guc-maintenance-work-mem">
settings larger than 1 GB (Robert Abraham, Teodor Sigaev)
</para>
-->
<para>
Improve handling of dead index tuples in <link
- linkend="GiST">GiST</link> indexes (Anastasia Lubennikova)
+ linkend="gist">GiST</link> indexes (Anastasia Lubennikova)
</para>
<para>
2016-03-30 [acdf2a8b3] Introduce SP-GiST operator class over box.
-->
<para>
- Add an <link linkend="SPGiST">SP-GiST</link> operator class for
+ Add an <link linkend="spgist">SP-GiST</link> operator class for
type <type>box</type> (Alexander Lebedev)
</para>
</listitem>
-->
<para>
Add a <option>--strict-names</option> option
- to <link linkend="APP-PGDUMP"><application>pg_dump</application></link>
- and <link linkend="APP-PGRESTORE"><application>pg_restore</application></link>
+ to <link linkend="app-pgdump"><application>pg_dump</application></link>
+ and <link linkend="app-pgrestore"><application>pg_restore</application></link>
(Pavel Stehule)
</para>
</itemizedlist>
<sect4>
- <title><xref linkend="APP-PSQL"></title>
+ <title><xref linkend="app-psql"></title>
<itemizedlist>
execution. It is very powerful, and can be used for many things
such as query language procedures, views, and versions. The
theoretical foundations and the power of this rule system are
- also discussed in <xref linkend="STON90b"> and <xref
- linkend="ONG90">.
+ also discussed in <xref linkend="ston90b"> and <xref
+ linkend="ong90">.
</para>
<sect1 id="querytree">
<!-- doc/src/sgml/spgist.sgml -->
-<chapter id="SPGiST">
+<chapter id="spgist">
<title>SP-GiST Indexes</title>
<indexterm>
<para>
More about <command>createdb</command> and <command>dropdb</command> can
- be found in <xref linkend="APP-CREATEDB"> and <xref linkend="APP-DROPDB">
+ be found in <xref linkend="app-createdb"> and <xref linkend="app-dropdb">
respectively.
</para>
</sect1>
<note>
<para>
- See also the <command><link linkend="APP-PSQL-meta-commands-crosstabview">\crosstabview</link></command>
+ See also the <command><link linkend="app-psql-meta-commands-crosstabview">\crosstabview</link></command>
command in <application>psql</application>, which provides functionality similar
to <function>crosstab()</function>.
</para>
</para>
</sect2>
- <sect2 id="extend-Cpp">
+ <sect2 id="extend-cpp">
<title>Using C++ for Extensibility</title>
- <indexterm zone="extend-Cpp">
+ <indexterm zone="extend-cpp">
<primary>C++</primary>
</indexterm>
<para>
GiST indexes have nine support functions, two of which are optional,
as shown in <xref linkend="xindex-gist-support-table">.
- (For more information see <xref linkend="GiST">.)
+ (For more information see <xref linkend="gist">.)
</para>
<table tocentry="1" id="xindex-gist-support-table">
<para>
SP-GiST indexes require five support functions, as
shown in <xref linkend="xindex-spgist-support-table">.
- (For more information see <xref linkend="SPGiST">.)
+ (For more information see <xref linkend="spgist">.)
</para>
<table tocentry="1" id="xindex-spgist-support-table">
<para>
GIN indexes have six support functions, three of which are optional,
as shown in <xref linkend="xindex-gin-support-table">.
- (For more information see <xref linkend="GIN">.)
+ (For more information see <xref linkend="gin">.)
</para>
<table tocentry="1" id="xindex-gin-support-table">