mirror of
https://github.com/postgres/postgres.git
synced 2025-07-28 23:42:10 +03:00
Remove useless whitespace at end of lines
This commit is contained in:
@ -40,7 +40,7 @@ Please enter a FULL description of your problem:
|
||||
|
||||
|
||||
Please describe a way to repeat the problem. Please try to provide a
|
||||
concise reproducible example, if at all possible:
|
||||
concise reproducible example, if at all possible:
|
||||
----------------------------------------------------------------------
|
||||
|
||||
|
||||
|
@ -64,7 +64,7 @@ CATALOG = -c $(DOCBOOKSTYLE)/catalog
|
||||
endif
|
||||
|
||||
# Enable some extra warnings
|
||||
# -wfully-tagged needed to throw a warning on missing tags
|
||||
# -wfully-tagged needed to throw a warning on missing tags
|
||||
# for older tool chains, 2007-08-31
|
||||
# Note: try "make SPFLAGS=-wxml" to catch a lot of other dubious constructs,
|
||||
# in particular < and & that haven't been made into entities. It's far too
|
||||
|
@ -112,8 +112,8 @@ LOAD 'auto_explain';
|
||||
<listitem>
|
||||
<para>
|
||||
<varname>auto_explain.log_buffers</varname> causes <command>EXPLAIN
|
||||
(ANALYZE, BUFFERS)</> output, rather than just <command>EXPLAIN</>
|
||||
output, to be printed when an execution plan is logged. This parameter is
|
||||
(ANALYZE, BUFFERS)</> output, rather than just <command>EXPLAIN</>
|
||||
output, to be printed when an execution plan is logged. This parameter is
|
||||
off by default. Only superusers can change this setting. This
|
||||
parameter has no effect unless <varname>auto_explain.log_analyze</>
|
||||
parameter is set.
|
||||
|
@ -257,7 +257,7 @@ ssimkovi@ag.or.at
|
||||
<bibliodiv>
|
||||
<title>Proceedings and Articles</title>
|
||||
<para>This section is for articles and newsletters.</para>
|
||||
|
||||
|
||||
<biblioentry id="OLSON93">
|
||||
<title>Partial indexing in POSTGRES: research project</title>
|
||||
<titleabbrev>Olson, 1993</titleabbrev>
|
||||
@ -328,7 +328,7 @@ ssimkovi@ag.or.at
|
||||
<biblioset relation="article">
|
||||
<title>Generalized Partial Indexes
|
||||
<ulink url="http://citeseer.ist.psu.edu/seshadri95generalized.html">(cached version)
|
||||
<!--
|
||||
<!--
|
||||
Original URL: http://citeseer.ist.psu.edu/seshadri95generalized.html
|
||||
-->
|
||||
</ulink>
|
||||
|
@ -71,7 +71,7 @@ initdb --locale=sv_SE
|
||||
locale then the specifications can take the form
|
||||
<replaceable>language_territory.codeset</>. For example,
|
||||
<literal>fr_BE.UTF-8</> represents the French language (fr) as
|
||||
spoken in Belgium (BE), with a <acronym>UTF-8</> character set
|
||||
spoken in Belgium (BE), with a <acronym>UTF-8</> character set
|
||||
encoding.
|
||||
</para>
|
||||
|
||||
|
@ -718,7 +718,7 @@ SET ENABLE_SEQSCAN TO OFF;
|
||||
<listitem>
|
||||
<para>
|
||||
Sets the location of the Kerberos server key file. See
|
||||
<xref linkend="kerberos-auth"> or <xref linkend="gssapi-auth">
|
||||
<xref linkend="kerberos-auth"> or <xref linkend="gssapi-auth">
|
||||
for details. This parameter can only be set in the
|
||||
<filename>postgresql.conf</> file or on the server command line.
|
||||
</para>
|
||||
@ -748,7 +748,7 @@ SET ENABLE_SEQSCAN TO OFF;
|
||||
<para>
|
||||
Sets whether Kerberos and GSSAPI user names should be treated
|
||||
case-insensitively.
|
||||
The default is <literal>off</> (case sensitive). This parameter can only be
|
||||
The default is <literal>off</> (case sensitive). This parameter can only be
|
||||
set in the <filename>postgresql.conf</> file or on the server command line.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -1044,7 +1044,7 @@ SET ENABLE_SEQSCAN TO OFF;
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry id="guc-shared-preload-libraries" xreflabel="shared_preload_libraries">
|
||||
<term><varname>shared_preload_libraries</varname> (<type>string</type>)</term>
|
||||
<indexterm>
|
||||
@ -1076,7 +1076,7 @@ SET ENABLE_SEQSCAN TO OFF;
|
||||
when the library is first used. However, the time to start each new
|
||||
server process might increase slightly, even if that process never
|
||||
uses the library. So this parameter is recommended only for
|
||||
libraries that will be used in most sessions.
|
||||
libraries that will be used in most sessions.
|
||||
</para>
|
||||
|
||||
<note>
|
||||
@ -1084,7 +1084,7 @@ SET ENABLE_SEQSCAN TO OFF;
|
||||
On Windows hosts, preloading a library at server start will not reduce
|
||||
the time required to start each new server process; each server process
|
||||
will re-load all preload libraries. However, <varname>shared_preload_libraries
|
||||
</varname> is still useful on Windows hosts because some shared libraries may
|
||||
</varname> is still useful on Windows hosts because some shared libraries may
|
||||
need to perform certain operations that only take place at postmaster start
|
||||
(for example, a shared library may need to reserve lightweight locks
|
||||
or shared memory and you can't do that after the postmaster has started).
|
||||
@ -1097,8 +1097,8 @@ SET ENABLE_SEQSCAN TO OFF;
|
||||
|
||||
<para>
|
||||
Every PostgreSQL-supported library has a <quote>magic
|
||||
block</> that is checked to guarantee compatibility.
|
||||
For this reason, non-PostgreSQL libraries cannot be
|
||||
block</> that is checked to guarantee compatibility.
|
||||
For this reason, non-PostgreSQL libraries cannot be
|
||||
loaded in this way.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -1487,7 +1487,7 @@ SET ENABLE_SEQSCAN TO OFF;
|
||||
<para>
|
||||
<varname>fsync</varname> can only be set in the <filename>postgresql.conf</>
|
||||
file or on the server command line.
|
||||
If you turn this parameter off, also consider turning off
|
||||
If you turn this parameter off, also consider turning off
|
||||
<xref linkend="guc-full-page-writes">.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -1528,7 +1528,7 @@ SET ENABLE_SEQSCAN TO OFF;
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry id="guc-wal-sync-method" xreflabel="wal_sync_method">
|
||||
<term><varname>wal_sync_method</varname> (<type>enum</type>)</term>
|
||||
<indexterm>
|
||||
@ -1584,7 +1584,7 @@ SET ENABLE_SEQSCAN TO OFF;
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry id="guc-full-page-writes" xreflabel="full_page_writes">
|
||||
<indexterm>
|
||||
<primary><varname>full_page_writes</> configuration parameter</primary>
|
||||
@ -1848,7 +1848,7 @@ SET ENABLE_SEQSCAN TO OFF;
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry id="guc-archive-timeout" xreflabel="archive_timeout">
|
||||
<term><varname>archive_timeout</varname> (<type>integer</type>)</term>
|
||||
<indexterm>
|
||||
@ -2257,7 +2257,7 @@ SET ENABLE_SEQSCAN TO OFF;
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
</variablelist>
|
||||
</sect2>
|
||||
<sect2 id="runtime-config-query-constants">
|
||||
@ -2368,7 +2368,7 @@ SET ENABLE_SEQSCAN TO OFF;
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry id="guc-cpu-operator-cost" xreflabel="cpu_operator_cost">
|
||||
<term><varname>cpu_operator_cost</varname> (<type>floating point</type>)</term>
|
||||
<indexterm>
|
||||
@ -2382,7 +2382,7 @@ SET ENABLE_SEQSCAN TO OFF;
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry id="guc-effective-cache-size" xreflabel="effective_cache_size">
|
||||
<term><varname>effective_cache_size</varname> (<type>integer</type>)</term>
|
||||
<indexterm>
|
||||
@ -2745,10 +2745,10 @@ SELECT * FROM parent WHERE key = 2400;
|
||||
<productname>PostgreSQL</productname> supports several methods
|
||||
for logging server messages, including
|
||||
<systemitem>stderr</systemitem>, <systemitem>csvlog</systemitem> and
|
||||
<systemitem>syslog</systemitem>. On Windows,
|
||||
<systemitem>syslog</systemitem>. On Windows,
|
||||
<systemitem>eventlog</systemitem> is also supported. Set this
|
||||
parameter to a list of desired log destinations separated by
|
||||
commas. The default is to log to <systemitem>stderr</systemitem>
|
||||
commas. The default is to log to <systemitem>stderr</systemitem>
|
||||
only.
|
||||
This parameter can only be set in the <filename>postgresql.conf</>
|
||||
file or on the server command line.
|
||||
@ -2759,7 +2759,7 @@ SELECT * FROM parent WHERE key = 2400;
|
||||
value</> (<acronym>CSV</>) format, which is convenient for
|
||||
loading logs into programs.
|
||||
See <xref linkend="runtime-config-logging-csvlog"> for details.
|
||||
<varname>logging_collector</varname> must be enabled to generate
|
||||
<varname>logging_collector</varname> must be enabled to generate
|
||||
CSV-format log output.
|
||||
</para>
|
||||
|
||||
@ -2822,7 +2822,7 @@ local0.* /var/log/postgresql
|
||||
</indexterm>
|
||||
<listitem>
|
||||
<para>
|
||||
When <varname>logging_collector</> is enabled,
|
||||
When <varname>logging_collector</> is enabled,
|
||||
this parameter determines the directory in which log files will be created.
|
||||
It can be specified as an absolute path, or relative to the
|
||||
cluster data directory.
|
||||
@ -2861,7 +2861,7 @@ local0.* /var/log/postgresql
|
||||
</para>
|
||||
<para>
|
||||
If CSV-format output is enabled in <varname>log_destination</>,
|
||||
<literal>.csv</> will be appended to the timestamped
|
||||
<literal>.csv</> will be appended to the timestamped
|
||||
log file name to create the file name for CSV-format output.
|
||||
(If <varname>log_filename</> ends in <literal>.log</>, the suffix is
|
||||
replaced instead.)
|
||||
@ -2966,18 +2966,18 @@ local0.* /var/log/postgresql
|
||||
</para>
|
||||
<para>
|
||||
Example: To keep 7 days of logs, one log file per day named
|
||||
<literal>server_log.Mon</literal>, <literal>server_log.Tue</literal>,
|
||||
<literal>server_log.Mon</literal>, <literal>server_log.Tue</literal>,
|
||||
etc, and automatically overwrite last week's log with this week's log,
|
||||
set <varname>log_filename</varname> to <literal>server_log.%a</literal>,
|
||||
<varname>log_truncate_on_rotation</varname> to <literal>on</literal>, and
|
||||
set <varname>log_filename</varname> to <literal>server_log.%a</literal>,
|
||||
<varname>log_truncate_on_rotation</varname> to <literal>on</literal>, and
|
||||
<varname>log_rotation_age</varname> to <literal>1440</literal>.
|
||||
</para>
|
||||
<para>
|
||||
Example: To keep 24 hours of logs, one log file per hour, but
|
||||
also rotate sooner if the log file size exceeds 1GB, set
|
||||
<varname>log_filename</varname> to <literal>server_log.%H%M</literal>,
|
||||
<varname>log_truncate_on_rotation</varname> to <literal>on</literal>,
|
||||
<varname>log_rotation_age</varname> to <literal>60</literal>, and
|
||||
Example: To keep 24 hours of logs, one log file per hour, but
|
||||
also rotate sooner if the log file size exceeds 1GB, set
|
||||
<varname>log_filename</varname> to <literal>server_log.%H%M</literal>,
|
||||
<varname>log_truncate_on_rotation</varname> to <literal>on</literal>,
|
||||
<varname>log_rotation_age</varname> to <literal>60</literal>, and
|
||||
<varname>log_rotation_size</varname> to <literal>1000000</literal>.
|
||||
Including <literal>%M</> in <varname>log_filename</varname> allows
|
||||
any size-driven rotations that might occur to select a file name
|
||||
@ -3007,7 +3007,7 @@ local0.* /var/log/postgresql
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry id="guc-syslog-ident" xreflabel="syslog_ident">
|
||||
<term><varname>syslog_ident</varname> (<type>string</type>)</term>
|
||||
<indexterm>
|
||||
@ -3132,7 +3132,7 @@ local0.* /var/log/postgresql
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry id="guc-log-min-duration-statement" xreflabel="log_min_duration_statement">
|
||||
<term><varname>log_min_duration_statement</varname> (<type>integer</type>)</term>
|
||||
<indexterm>
|
||||
@ -3163,7 +3163,7 @@ local0.* /var/log/postgresql
|
||||
the text of statements that are logged because of
|
||||
<varname>log_statement</> will not be repeated in the
|
||||
duration log message.
|
||||
If you are not using <application>syslog</>, it is recommended
|
||||
If you are not using <application>syslog</>, it is recommended
|
||||
that you log the PID or session ID using
|
||||
<xref linkend="guc-log-line-prefix">
|
||||
so that you can link the statement message to the later
|
||||
@ -3365,8 +3365,8 @@ local0.* /var/log/postgresql
|
||||
|
||||
<note>
|
||||
<para>
|
||||
Some client programs, like <application>psql</>, attempt
|
||||
to connect twice while determining if a password is required, so
|
||||
Some client programs, like <application>psql</>, attempt
|
||||
to connect twice while determining if a password is required, so
|
||||
duplicate <quote>connection received</> messages do not
|
||||
necessarily indicate a problem.
|
||||
</para>
|
||||
@ -3462,7 +3462,7 @@ local0.* /var/log/postgresql
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry id="guc-log-line-prefix" xreflabel="log_line_prefix">
|
||||
<term><varname>log_line_prefix</varname> (<type>string</type>)</term>
|
||||
<indexterm>
|
||||
@ -3607,7 +3607,7 @@ FROM pg_stat_activity;
|
||||
|
||||
<tip>
|
||||
<para>
|
||||
<application>Syslog</> produces its own
|
||||
<application>Syslog</> produces its own
|
||||
time stamp and process ID information, so you probably do not want to
|
||||
include those escapes if you are logging to <application>syslog</>.
|
||||
</para>
|
||||
@ -3808,9 +3808,9 @@ COPY postgres_log FROM '/full/path/to/logfile.csv' WITH csv;
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
Set <varname>log_rotation_size</varname> to 0 to disable
|
||||
size-based log rotation, as it makes the log file name difficult
|
||||
to predict.
|
||||
Set <varname>log_rotation_size</varname> to 0 to disable
|
||||
size-based log rotation, as it makes the log file name difficult
|
||||
to predict.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
@ -5000,7 +5000,7 @@ dynamic_library_path = 'C:\tools\postgresql;H:\my_project\lib;$libdir'
|
||||
|
||||
<para>
|
||||
Every PostgreSQL-supported library has a <quote>magic
|
||||
block</> that is checked to guarantee compatibility.
|
||||
block</> that is checked to guarantee compatibility.
|
||||
For this reason, non-PostgreSQL libraries cannot be
|
||||
loaded in this way.
|
||||
</para>
|
||||
|
@ -15,7 +15,7 @@ and the mailing lists themselves.
|
||||
|
||||
<para>
|
||||
Refer to the introduction in this manual or to the
|
||||
<productname>PostgreSQL</productname>
|
||||
<productname>PostgreSQL</productname>
|
||||
<ulink url="http://www.postgresql.org">web page</ulink>
|
||||
for subscription information to the no-cost mailing lists.
|
||||
</para>
|
||||
|
@ -16,7 +16,7 @@
|
||||
|
||||
<para>
|
||||
When building from the source distribution, these modules are not built
|
||||
automatically, unless you build the "world" target
|
||||
automatically, unless you build the "world" target
|
||||
(see <xref linkend="build">).
|
||||
You can build and install all of them by running:
|
||||
<screen>
|
||||
|
@ -21,7 +21,7 @@
|
||||
|
||||
<para>
|
||||
<xref linkend="datatype-table"> shows all the built-in general-purpose data
|
||||
types. Most of the alternative names listed in the
|
||||
types. Most of the alternative names listed in the
|
||||
<quote>Aliases</quote> column are the names used internally by
|
||||
<productname>PostgreSQL</productname> for historical reasons. In
|
||||
addition, some internally used or deprecated types are available,
|
||||
@ -555,7 +555,7 @@ NUMERIC
|
||||
|
||||
<para>
|
||||
In addition to ordinary numeric values, the <type>numeric</type>
|
||||
type allows the special value <literal>NaN</>, meaning
|
||||
type allows the special value <literal>NaN</>, meaning
|
||||
<quote>not-a-number</quote>. Any operation on <literal>NaN</>
|
||||
yields another <literal>NaN</>. When writing this value
|
||||
as a constant in an SQL command, you must put quotes around it,
|
||||
@ -703,9 +703,9 @@ NUMERIC
|
||||
<type>float(<replaceable>p</replaceable>)</type> for specifying
|
||||
inexact numeric types. Here, <replaceable>p</replaceable> specifies
|
||||
the minimum acceptable precision in <emphasis>binary</> digits.
|
||||
<productname>PostgreSQL</productname> accepts
|
||||
<productname>PostgreSQL</productname> accepts
|
||||
<type>float(1)</type> to <type>float(24)</type> as selecting the
|
||||
<type>real</type> type, while
|
||||
<type>real</type> type, while
|
||||
<type>float(25)</type> to <type>float(53)</type> select
|
||||
<type>double precision</type>. Values of <replaceable>p</replaceable>
|
||||
outside the allowed range draw an error.
|
||||
@ -1628,7 +1628,7 @@ MINUTE TO SECOND
|
||||
|
||||
<para>
|
||||
Date and time input is accepted in almost any reasonable format, including
|
||||
ISO 8601, <acronym>SQL</acronym>-compatible,
|
||||
ISO 8601, <acronym>SQL</acronym>-compatible,
|
||||
traditional <productname>POSTGRES</productname>, and others.
|
||||
For some formats, ordering of day, month, and year in date input is
|
||||
ambiguous and there is support for specifying the expected
|
||||
@ -1645,12 +1645,12 @@ MINUTE TO SECOND
|
||||
See <xref linkend="datetime-appendix">
|
||||
for the exact parsing rules of date/time input and for the
|
||||
recognized text fields including months, days of the week, and
|
||||
time zones.
|
||||
time zones.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Remember that any date or time literal input needs to be enclosed
|
||||
in single quotes, like text strings. Refer to
|
||||
in single quotes, like text strings. Refer to
|
||||
<xref linkend="sql-syntax-constants-generic"> for more
|
||||
information.
|
||||
<acronym>SQL</acronym> requires the following syntax
|
||||
@ -1672,7 +1672,7 @@ MINUTE TO SECOND
|
||||
<indexterm>
|
||||
<primary>date</primary>
|
||||
</indexterm>
|
||||
|
||||
|
||||
<para>
|
||||
<xref linkend="datatype-datetime-date-table"> shows some possible
|
||||
inputs for the <type>date</type> type.
|
||||
@ -1787,7 +1787,7 @@ MINUTE TO SECOND
|
||||
<para>
|
||||
Valid input for these types consists of a time of day followed
|
||||
by an optional time zone. (See <xref
|
||||
linkend="datatype-datetime-time-table">
|
||||
linkend="datatype-datetime-time-table">
|
||||
and <xref linkend="datatype-timezone-table">.) If a time zone is
|
||||
specified in the input for <type>time without time zone</type>,
|
||||
it is silently ignored. You can also specify a date but it will
|
||||
@ -1954,8 +1954,8 @@ January 8 04:05:06 1999 PST
|
||||
|
||||
<para>
|
||||
The <acronym>SQL</acronym> standard differentiates
|
||||
<type>timestamp without time zone</type>
|
||||
and <type>timestamp with time zone</type> literals by the presence of a
|
||||
<type>timestamp without time zone</type>
|
||||
and <type>timestamp with time zone</type> literals by the presence of a
|
||||
<quote>+</quote> or <quote>-</quote> symbol and time zone offset after
|
||||
the time. Hence, according to the standard,
|
||||
|
||||
@ -2097,10 +2097,10 @@ January 8 04:05:06 1999 PST
|
||||
The following <acronym>SQL</acronym>-compatible functions can also
|
||||
be used to obtain the current time value for the corresponding data
|
||||
type:
|
||||
<literal>CURRENT_DATE</literal>, <literal>CURRENT_TIME</literal>,
|
||||
<literal>CURRENT_TIMESTAMP</literal>, <literal>LOCALTIME</literal>,
|
||||
<literal>LOCALTIMESTAMP</literal>. The latter four accept an
|
||||
optional subsecond precision specification. (See <xref
|
||||
<literal>CURRENT_DATE</literal>, <literal>CURRENT_TIME</literal>,
|
||||
<literal>CURRENT_TIMESTAMP</literal>, <literal>LOCALTIME</literal>,
|
||||
<literal>LOCALTIMESTAMP</literal>. The latter four accept an
|
||||
optional subsecond precision specification. (See <xref
|
||||
linkend="functions-datetime-current">.) Note that these are
|
||||
SQL functions and are <emphasis>not</> recognized in data input strings.
|
||||
</para>
|
||||
@ -2255,10 +2255,10 @@ January 8 04:05:06 1999 PST
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
Although the <type>date</type> type
|
||||
Although the <type>date</type> type
|
||||
cannot have an associated time zone, the
|
||||
<type>time</type> type can.
|
||||
Time zones in the real world have little meaning unless
|
||||
Time zones in the real world have little meaning unless
|
||||
associated with a date as well as a time,
|
||||
since the offset can vary through the year with daylight-saving
|
||||
time boundaries.
|
||||
@ -2267,7 +2267,7 @@ January 8 04:05:06 1999 PST
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
The default time zone is specified as a constant numeric offset
|
||||
The default time zone is specified as a constant numeric offset
|
||||
from <acronym>UTC</>. It is therefore impossible to adapt to
|
||||
daylight-saving time when doing date/time arithmetic across
|
||||
<acronym>DST</acronym> boundaries.
|
||||
@ -2901,7 +2901,7 @@ SELECT * FROM person WHERE current_mood = 'happy';
|
||||
order in which the values were listed when the type was created.
|
||||
All standard comparison operators and related
|
||||
aggregate functions are supported for enums. For example:
|
||||
|
||||
|
||||
<programlisting>
|
||||
INSERT INTO person VALUES ('Larry', 'sad');
|
||||
INSERT INTO person VALUES ('Curly', 'ok');
|
||||
@ -2919,7 +2919,7 @@ SELECT * FROM person WHERE current_mood > 'sad' ORDER BY current_mood;
|
||||
Moe | happy
|
||||
(2 rows)
|
||||
|
||||
SELECT name
|
||||
SELECT name
|
||||
FROM person
|
||||
WHERE current_mood = (SELECT MIN(current_mood) FROM person);
|
||||
name
|
||||
@ -2972,7 +2972,7 @@ SELECT person.name, holidays.num_weeks FROM person, holidays
|
||||
|
||||
<sect2>
|
||||
<title>Implementation Details</title>
|
||||
|
||||
|
||||
<para>
|
||||
An enum value occupies four bytes on disk. The length of an enum
|
||||
value's textual label is limited by the <symbol>NAMEDATALEN</symbol>
|
||||
@ -3409,8 +3409,8 @@ SELECT person.name, holidays.num_weeks FROM person, holidays
|
||||
<table id="datatype-net-cidr-table">
|
||||
<title><type>cidr</> Type Input Examples</title>
|
||||
<tgroup cols="3">
|
||||
<thead>
|
||||
<row>
|
||||
<thead>
|
||||
<row>
|
||||
<entry><type>cidr</type> Input</entry>
|
||||
<entry><type>cidr</type> Output</entry>
|
||||
<entry><literal><function>abbrev(<type>cidr</type>)</function></literal></entry>
|
||||
@ -3772,7 +3772,7 @@ select 'The Fat Rats'::tsvector;
|
||||
for searching:
|
||||
|
||||
<programlisting>
|
||||
SELECT to_tsvector('english', 'The Fat Rats');
|
||||
SELECT to_tsvector('english', 'The Fat Rats');
|
||||
to_tsvector
|
||||
-----------------
|
||||
'fat':2 'rat':3
|
||||
@ -3913,7 +3913,7 @@ a0ee-bc99-9c0b-4ef8-bb6d-6bb9-bd38-0a11
|
||||
functions for UUIDs, but the core database does not include any
|
||||
function for generating UUIDs, because no single algorithm is well
|
||||
suited for every application. The contrib module
|
||||
<filename>contrib/uuid-ossp</filename> provides functions that implement
|
||||
<filename>contrib/uuid-ossp</filename> provides functions that implement
|
||||
several standard algorithms.
|
||||
Alternatively, UUIDs could be generated by client applications or
|
||||
other libraries invoked through a server-side function.
|
||||
@ -3933,7 +3933,7 @@ a0ee-bc99-9c0b-4ef8-bb6d-6bb9-bd38-0a11
|
||||
checks the input values for well-formedness, and there are support
|
||||
functions to perform type-safe operations on it; see <xref
|
||||
linkend="functions-xml">. Use of this data type requires the
|
||||
installation to have been built with <command>configure
|
||||
installation to have been built with <command>configure
|
||||
--with-libxml</>.
|
||||
</para>
|
||||
|
||||
|
@ -75,7 +75,7 @@
|
||||
<para>
|
||||
If the token is a text string, match up with possible strings:
|
||||
</para>
|
||||
|
||||
|
||||
<substeps>
|
||||
<step>
|
||||
<para>
|
||||
@ -83,7 +83,7 @@
|
||||
abbreviation.
|
||||
</para>
|
||||
</step>
|
||||
|
||||
|
||||
<step>
|
||||
<para>
|
||||
If not found, do a similar binary-search table lookup to match
|
||||
@ -101,7 +101,7 @@
|
||||
</step>
|
||||
</substeps>
|
||||
</step>
|
||||
|
||||
|
||||
<step>
|
||||
<para>
|
||||
When the token is a number or number field:
|
||||
@ -111,7 +111,7 @@
|
||||
<step>
|
||||
<para>
|
||||
If there are eight or six digits,
|
||||
and if no other date fields have been previously read, then interpret
|
||||
and if no other date fields have been previously read, then interpret
|
||||
as a <quote>concatenated date</quote> (e.g.,
|
||||
<literal>19990118</literal> or <literal>990118</literal>).
|
||||
The interpretation is <literal>YYYYMMDD</> or <literal>YYMMDD</>.
|
||||
@ -124,7 +124,7 @@
|
||||
and a year has already been read, then interpret as day of year.
|
||||
</para>
|
||||
</step>
|
||||
|
||||
|
||||
<step>
|
||||
<para>
|
||||
If four or six digits and a year has already been read, then
|
||||
@ -465,7 +465,7 @@
|
||||
about 1 day in 128 years.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<para>
|
||||
The accumulating calendar error prompted
|
||||
Pope Gregory XIII to reform the calendar in accordance with
|
||||
instructions from the Council of Trent.
|
||||
@ -544,7 +544,7 @@ $ <userinput>cal 9 1752</userinput>
|
||||
the beginnings of the Chinese calendar can be traced back to the 14th
|
||||
century BC. Legend has it that the Emperor Huangdi invented that
|
||||
calendar in 2637 BC.
|
||||
|
||||
|
||||
The People's Republic of China uses the Gregorian calendar
|
||||
for civil purposes. The Chinese calendar is used for determining
|
||||
festivals.
|
||||
@ -552,7 +552,7 @@ $ <userinput>cal 9 1752</userinput>
|
||||
|
||||
<para>
|
||||
The <quote>Julian Date</quote> is unrelated to the <quote>Julian
|
||||
calendar</quote>.
|
||||
calendar</quote>.
|
||||
The Julian Date system was invented by the French scholar
|
||||
Joseph Justus Scaliger (1540-1609)
|
||||
and probably takes its name from Scaliger's father,
|
||||
|
@ -160,7 +160,7 @@ cc -shared -o foo.so foo.o
|
||||
<para>
|
||||
Here is an example. It assumes the developer tools are installed.
|
||||
<programlisting>
|
||||
cc -c foo.c
|
||||
cc -c foo.c
|
||||
cc -bundle -flat_namespace -undefined suppress -o foo.so foo.o
|
||||
</programlisting>
|
||||
</para>
|
||||
@ -226,7 +226,7 @@ gcc -G -o foo.so foo.o
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><systemitem class="osname">Tru64 UNIX</></term>
|
||||
<term><systemitem class="osname">Tru64 UNIX</></term>
|
||||
<indexterm><primary>Tru64 UNIX</><secondary>shared library</></>
|
||||
<indexterm><primary>Digital UNIX</><see>Tru64 UNIX</></>
|
||||
<listitem>
|
||||
@ -272,7 +272,7 @@ gcc -shared -o foo.so foo.o
|
||||
|
||||
<tip>
|
||||
<para>
|
||||
If this is too complicated for you, you should consider using
|
||||
If this is too complicated for you, you should consider using
|
||||
<ulink url="http://www.gnu.org/software/libtool/">
|
||||
<productname>GNU Libtool</productname></ulink>,
|
||||
which hides the platform differences behind a uniform interface.
|
||||
|
@ -240,7 +240,7 @@
|
||||
|
||||
<para>
|
||||
It's possible that the ports do not update the main catalog file
|
||||
in <filename>/usr/local/share/sgml/catalog.ports</filename> or order
|
||||
in <filename>/usr/local/share/sgml/catalog.ports</filename> or order
|
||||
isn't proper . Be sure to have the following lines in beginning of file:
|
||||
<programlisting>
|
||||
CATALOG "openjade/catalog"
|
||||
@ -613,7 +613,7 @@ gmake man
|
||||
</screen>
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
To make a <acronym>PDF</acronym>:
|
||||
@ -1059,7 +1059,7 @@ save_size.pdfjadetex = 15000
|
||||
<para>
|
||||
Norm Walsh offers a
|
||||
<ulink url="http://nwalsh.com/emacs/docbookide/index.html">major mode</ulink>
|
||||
specifically for DocBook which also has font-lock and a number of features to
|
||||
specifically for DocBook which also has font-lock and a number of features to
|
||||
reduce typing.
|
||||
</para>
|
||||
</sect2>
|
||||
@ -1114,7 +1114,7 @@ save_size.pdfjadetex = 15000
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry>
|
||||
<term>Description</term>
|
||||
<listitem>
|
||||
@ -1123,7 +1123,7 @@ save_size.pdfjadetex = 15000
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry>
|
||||
<term>Options</term>
|
||||
<listitem>
|
||||
@ -1133,7 +1133,7 @@ save_size.pdfjadetex = 15000
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry>
|
||||
<term>Exit Status</term>
|
||||
<listitem>
|
||||
@ -1144,7 +1144,7 @@ save_size.pdfjadetex = 15000
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry>
|
||||
<term>Usage</term>
|
||||
<listitem>
|
||||
@ -1156,7 +1156,7 @@ save_size.pdfjadetex = 15000
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry>
|
||||
<term>Environment</term>
|
||||
<listitem>
|
||||
@ -1167,7 +1167,7 @@ save_size.pdfjadetex = 15000
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry>
|
||||
<term>Files</term>
|
||||
<listitem>
|
||||
@ -1178,7 +1178,7 @@ save_size.pdfjadetex = 15000
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry>
|
||||
<term>Diagnostics</term>
|
||||
<listitem>
|
||||
@ -1191,7 +1191,7 @@ save_size.pdfjadetex = 15000
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry>
|
||||
<term>Notes</term>
|
||||
<listitem>
|
||||
@ -1202,7 +1202,7 @@ save_size.pdfjadetex = 15000
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry>
|
||||
<term>Examples</term>
|
||||
<listitem>
|
||||
@ -1211,7 +1211,7 @@ save_size.pdfjadetex = 15000
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry>
|
||||
<term>History</term>
|
||||
<listitem>
|
||||
@ -1222,7 +1222,7 @@ save_size.pdfjadetex = 15000
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry>
|
||||
<term>See Also</term>
|
||||
<listitem>
|
||||
|
@ -110,7 +110,7 @@ EXEC SQL CONNECT TO <replaceable>target</replaceable> <optional>AS <replaceable>
|
||||
<literal>unix:postgresql://<replaceable>hostname</><optional>:<replaceable>port</></optional><optional>/<replaceable>dbname</></optional><optional>?<replaceable>options</></optional></literal>
|
||||
</simpara>
|
||||
</listitem>
|
||||
|
||||
|
||||
<listitem>
|
||||
<simpara>
|
||||
an SQL string literal containing one of the above forms
|
||||
@ -122,7 +122,7 @@ EXEC SQL CONNECT TO <replaceable>target</replaceable> <optional>AS <replaceable>
|
||||
a reference to a character variable containing one of the above forms (see examples)
|
||||
</simpara>
|
||||
</listitem>
|
||||
|
||||
|
||||
<listitem>
|
||||
<simpara>
|
||||
<literal>DEFAULT</literal>
|
||||
@ -2743,7 +2743,6 @@ timestamp PGTYPEStimestamp_from_asc(char *str, char **endptr);
|
||||
The function returns the parsed timestamp on success. On error,
|
||||
<literal>PGTYPESInvalidTimestamp</literal> is returned and <varname>errno</> is
|
||||
set to <literal>PGTYPES_TS_BAD_TIMESTAMP</>. See <xref linkend="PGTYPESInvalidTimestamp"> for important notes on this value.
|
||||
|
||||
</para>
|
||||
<para>
|
||||
In general, the input string can contain any combination of an allowed
|
||||
@ -2839,7 +2838,7 @@ int PGTYPEStimestamp_fmt_asc(timestamp *ts, char *output, int str_len, char *fmt
|
||||
You can use the following format specifiers for the format mask. The
|
||||
format specifiers are the same ones that are used in the
|
||||
<function>strftime</> function in <productname>libc</productname>. Any
|
||||
non-format specifier will be copied into the output buffer.
|
||||
non-format specifier will be copied into the output buffer.
|
||||
<!-- This is from the FreeBSD man page:
|
||||
http://www.freebsd.org/cgi/man.cgi?query=strftime&apropos=0&sektion=3&manpath=FreeBSD+7.0-current&format=html
|
||||
-->
|
||||
@ -2897,24 +2896,24 @@ int PGTYPEStimestamp_fmt_asc(timestamp *ts, char *output, int str_len, char *fmt
|
||||
<literal>%E*</literal> <literal>%O*</literal> - POSIX locale
|
||||
extensions. The sequences
|
||||
<literal>%Ec</literal>
|
||||
<literal>%EC</literal>
|
||||
<literal>%Ex</literal>
|
||||
<literal>%EX</literal>
|
||||
<literal>%Ey</literal>
|
||||
<literal>%EY</literal>
|
||||
<literal>%Od</literal>
|
||||
<literal>%EC</literal>
|
||||
<literal>%Ex</literal>
|
||||
<literal>%EX</literal>
|
||||
<literal>%Ey</literal>
|
||||
<literal>%EY</literal>
|
||||
<literal>%Od</literal>
|
||||
<literal>%Oe</literal>
|
||||
<literal>%OH</literal>
|
||||
<literal>%OI</literal>
|
||||
<literal>%Om</literal>
|
||||
<literal>%OM</literal>
|
||||
<literal>%OS</literal>
|
||||
<literal>%Ou</literal>
|
||||
<literal>%OU</literal>
|
||||
<literal>%OV</literal>
|
||||
<literal>%Ow</literal>
|
||||
<literal>%OW</literal>
|
||||
<literal>%Oy</literal>
|
||||
<literal>%OH</literal>
|
||||
<literal>%OI</literal>
|
||||
<literal>%Om</literal>
|
||||
<literal>%OM</literal>
|
||||
<literal>%OS</literal>
|
||||
<literal>%Ou</literal>
|
||||
<literal>%OU</literal>
|
||||
<literal>%OV</literal>
|
||||
<literal>%Ow</literal>
|
||||
<literal>%OW</literal>
|
||||
<literal>%Oy</literal>
|
||||
are supposed to provide alternative representations.
|
||||
</para>
|
||||
<para>
|
||||
@ -5763,10 +5762,10 @@ ECPG = ecpg
|
||||
<note>
|
||||
<para>
|
||||
On Windows, if the <application>ecpg</> libraries and an application are
|
||||
compiled with different flags, this function call will crash the
|
||||
application because the internal representation of the
|
||||
compiled with different flags, this function call will crash the
|
||||
application because the internal representation of the
|
||||
<literal>FILE</> pointers differ. Specifically,
|
||||
multithreaded/single-threaded, release/debug, and static/dynamic
|
||||
multithreaded/single-threaded, release/debug, and static/dynamic
|
||||
flags should be the same for the library and all applications using
|
||||
that library.
|
||||
</para>
|
||||
@ -5778,7 +5777,7 @@ ECPG = ecpg
|
||||
<function>ECPGget_PGconn(const char *<replaceable>connection_name</replaceable>)
|
||||
</function> returns the library database connection handle identified by the given name.
|
||||
If <replaceable>connection_name</replaceable> is set to <literal>NULL</literal>, the current
|
||||
connection handle is returned. If no connection handle can be identified, the function returns
|
||||
connection handle is returned. If no connection handle can be identified, the function returns
|
||||
<literal>NULL</literal>. The returned connection handle can be used to call any other functions
|
||||
from <application>libpq</application>, if necessary.
|
||||
</para>
|
||||
@ -5803,7 +5802,7 @@ ECPG = ecpg
|
||||
<function>ECPGstatus(int <replaceable>lineno</replaceable>,
|
||||
const char* <replaceable>connection_name</replaceable>)</function>
|
||||
returns true if you are connected to a database and false if not.
|
||||
<replaceable>connection_name</replaceable> can be <literal>NULL</>
|
||||
<replaceable>connection_name</replaceable> can be <literal>NULL</>
|
||||
if a single connection is being used.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -8064,7 +8063,7 @@ typedef struct sqlda_compat sqlda_t;
|
||||
Pointer to the field data. The pointer is of <literal>char *</literal> type,
|
||||
the data pointed by it is in a binary format. Example:
|
||||
<programlisting>
|
||||
int intval;
|
||||
int intval;
|
||||
|
||||
switch (sqldata->sqlvar[i].sqltype)
|
||||
{
|
||||
@ -8083,7 +8082,7 @@ switch (sqldata->sqlvar[i].sqltype)
|
||||
<listitem>
|
||||
<para>
|
||||
Pointer to the NULL indicator. If returned by DESCRIBE or FETCH then it's always a valid pointer.
|
||||
If used as input for <literal>EXECUTE ... USING sqlda;</literal> then NULL-pointer value means
|
||||
If used as input for <literal>EXECUTE ... USING sqlda;</literal> then NULL-pointer value means
|
||||
that the value for this field is non-NULL. Otherwise a valid pointer and <literal>sqlitype</literal>
|
||||
has to be properly set. Example:
|
||||
<programlisting>
|
||||
@ -8117,7 +8116,7 @@ if (*(int2 *)sqldata->sqlvar[i].sqlind != 0)
|
||||
<listitem>
|
||||
<para>
|
||||
Type of the NULL indicator data. It's always SQLSMINT when returning data from the server.
|
||||
When the <literal>SQLDA</literal> is used for a parametrized query, the data is treated
|
||||
When the <literal>SQLDA</literal> is used for a parametrized query, the data is treated
|
||||
according to the set type.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -8143,13 +8142,13 @@ if (*(int2 *)sqldata->sqlvar[i].sqlind != 0)
|
||||
|
||||
<varlistentry>
|
||||
<term><literal>sqltypename</></term>
|
||||
<term><literal>sqltypelen</></term>
|
||||
<term><literal>sqltypelen</></term>
|
||||
<term><literal>sqlownerlen</></term>
|
||||
<term><literal>sqlsourcetype</></term>
|
||||
<term><literal>sqlownername</></term>
|
||||
<term><literal>sqlsourceid</></term>
|
||||
<term><literal>sqlflags</></term>
|
||||
<term><literal>sqlreserved</></term>
|
||||
<term><literal>sqlownername</></term>
|
||||
<term><literal>sqlsourceid</></term>
|
||||
<term><literal>sqlflags</></term>
|
||||
<term><literal>sqlreserved</></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Unused.
|
||||
@ -8469,7 +8468,7 @@ int dectoasc(decimal *np, char *cp, int len, int right)
|
||||
<para>
|
||||
The function returns either -1 if the buffer <literal>cp</> was too
|
||||
small or <literal>ECPG_INFORMIX_OUT_OF_MEMORY</> if memory was
|
||||
exhausted.
|
||||
exhausted.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
@ -9548,7 +9547,7 @@ risnull(CINTTYPE, (char *) &i);
|
||||
</listitem>
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
<para>
|
||||
A pointer to the value or a pointer to the pointer.
|
||||
</para>
|
||||
</listitem>
|
||||
|
@ -9,7 +9,7 @@
|
||||
|
||||
<para>
|
||||
In the sections that follow, we will discuss how you
|
||||
can extend the <productname>PostgreSQL</productname>
|
||||
can extend the <productname>PostgreSQL</productname>
|
||||
<acronym>SQL</acronym> query language by adding:
|
||||
|
||||
<itemizedlist spacing="compact" mark="bullet">
|
||||
@ -45,8 +45,8 @@
|
||||
<title>How Extensibility Works</title>
|
||||
|
||||
<para>
|
||||
<productname>PostgreSQL</productname> is extensible because its operation is
|
||||
catalog-driven. If you are familiar with standard
|
||||
<productname>PostgreSQL</productname> is extensible because its operation is
|
||||
catalog-driven. If you are familiar with standard
|
||||
relational database systems, you know that they store information
|
||||
about databases, tables, columns, etc., in what are
|
||||
commonly known as system catalogs. (Some systems call
|
||||
@ -54,14 +54,14 @@
|
||||
user as tables like any other, but the <acronym>DBMS</acronym> stores
|
||||
its internal bookkeeping in them. One key difference
|
||||
between <productname>PostgreSQL</productname> and standard relational database systems is
|
||||
that <productname>PostgreSQL</productname> stores much more information in its
|
||||
that <productname>PostgreSQL</productname> stores much more information in its
|
||||
catalogs: not only information about tables and columns,
|
||||
but also information about data types, functions, access
|
||||
methods, and so on. These tables can be modified by
|
||||
the user, and since <productname>PostgreSQL</productname> bases its operation
|
||||
the user, and since <productname>PostgreSQL</productname> bases its operation
|
||||
on these tables, this means that <productname>PostgreSQL</productname> can be
|
||||
extended by users. By comparison, conventional
|
||||
database systems can only be extended by changing hardcoded
|
||||
database systems can only be extended by changing hardcoded
|
||||
procedures in the source code or by loading modules
|
||||
specially written by the <acronym>DBMS</acronym> vendor.
|
||||
</para>
|
||||
@ -209,7 +209,7 @@
|
||||
parsed. Each position (either argument or return value) declared as
|
||||
<type>anyelement</type> is allowed to have any specific actual
|
||||
data type, but in any given call they must all be the
|
||||
<emphasis>same</emphasis> actual type. Each
|
||||
<emphasis>same</emphasis> actual type. Each
|
||||
position declared as <type>anyarray</type> can have any array data type,
|
||||
but similarly they must all be the same type. If there are
|
||||
positions declared <type>anyarray</type> and others declared
|
||||
|
@ -218,7 +218,7 @@
|
||||
</tgroup>
|
||||
</table>
|
||||
</sect1>
|
||||
|
||||
|
||||
<sect1 id="external-extensions">
|
||||
<title>Extensions</title>
|
||||
|
||||
@ -247,7 +247,7 @@
|
||||
<para>
|
||||
There are several administration tools available for
|
||||
<productname>PostgreSQL</>. The most popular is
|
||||
<application><ulink url="http://www.pgadmin.org/">pgAdmin III</ulink></>,
|
||||
<application><ulink url="http://www.pgadmin.org/">pgAdmin III</ulink></>,
|
||||
and there are several commercially available ones as well.
|
||||
</para>
|
||||
</sect1>
|
||||
|
@ -134,7 +134,7 @@
|
||||
<!entity unaccent SYSTEM "unaccent.sgml">
|
||||
<!entity uuid-ossp SYSTEM "uuid-ossp.sgml">
|
||||
<!entity vacuumlo SYSTEM "vacuumlo.sgml">
|
||||
<!entity xml2 SYSTEM "xml2.sgml">
|
||||
<!entity xml2 SYSTEM "xml2.sgml">
|
||||
|
||||
<!-- appendixes -->
|
||||
<!entity contacts SYSTEM "contacts.sgml">
|
||||
|
@ -30,7 +30,7 @@
|
||||
is present in other <acronym>SQL</acronym> database management
|
||||
systems, and in many cases this functionality is compatible and
|
||||
consistent between the various implementations. This chapter is also
|
||||
not exhaustive; additional functions appear in relevant sections of
|
||||
not exhaustive; additional functions appear in relevant sections of
|
||||
the manual.
|
||||
</para>
|
||||
|
||||
@ -416,7 +416,7 @@
|
||||
<literal>IS NOT NULL</literal>, respectively, except that the input
|
||||
expression must be of Boolean type.
|
||||
</para>
|
||||
|
||||
|
||||
<!-- IS OF does not conform to the ISO SQL behavior, so it is undocumented here
|
||||
<para>
|
||||
<indexterm>
|
||||
@ -1077,7 +1077,7 @@
|
||||
<entry>Return Type</entry>
|
||||
<entry>Description</entry>
|
||||
<entry>Example</entry>
|
||||
<entry>Result</entry>
|
||||
<entry>Result</entry>
|
||||
</row>
|
||||
</thead>
|
||||
|
||||
@ -1432,7 +1432,7 @@
|
||||
original encoding is specified by
|
||||
<parameter>src_encoding</parameter>. The
|
||||
<parameter>string</parameter> must be valid in this encoding.
|
||||
Conversions can be defined by <command>CREATE CONVERSION</command>.
|
||||
Conversions can be defined by <command>CREATE CONVERSION</command>.
|
||||
Also there are some predefined conversions. See <xref
|
||||
linkend="conversion-names"> for available conversions.
|
||||
</entry>
|
||||
@ -1476,12 +1476,12 @@
|
||||
</entry>
|
||||
<entry><type>bytea</type></entry>
|
||||
<entry>
|
||||
Decode binary data from <parameter>string</parameter> previously
|
||||
Decode binary data from <parameter>string</parameter> previously
|
||||
encoded with <function>encode</>. Parameter type is same as in <function>encode</>.
|
||||
</entry>
|
||||
<entry><literal>decode('MTIzAAE=', 'base64')</literal></entry>
|
||||
<entry><literal>123\000\001</literal></entry>
|
||||
</row>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry>
|
||||
@ -1497,7 +1497,7 @@
|
||||
</entry>
|
||||
<entry><literal>encode(E'123\\000\\001', 'base64')</literal></entry>
|
||||
<entry><literal>MTIzAAE=</literal></entry>
|
||||
</row>
|
||||
</row>
|
||||
|
||||
<row>
|
||||
<entry>
|
||||
@ -1897,8 +1897,8 @@
|
||||
</entry>
|
||||
<entry><literal>translate('12345', '143', 'ax')</literal></entry>
|
||||
<entry><literal>a2x5</literal></entry>
|
||||
</row>
|
||||
|
||||
</row>
|
||||
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</table>
|
||||
@ -5050,15 +5050,15 @@ SELECT SUBSTRING('XY1234Z', 'Y*?([0-9]{1,3})');
|
||||
<row>
|
||||
<entry><literal>HH12</literal></entry>
|
||||
<entry>hour of day (01-12)</entry>
|
||||
</row>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>HH24</literal></entry>
|
||||
<entry>hour of day (00-23)</entry>
|
||||
</row>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>MI</literal></entry>
|
||||
<entry>minute (00-59)</entry>
|
||||
</row>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>SS</literal></entry>
|
||||
<entry>second (00-59)</entry>
|
||||
@ -5206,7 +5206,7 @@ SELECT SUBSTRING('XY1234Z', 'Y*?([0-9]{1,3})');
|
||||
<row>
|
||||
<entry><literal>W</literal></entry>
|
||||
<entry>week of month (1-5) (The first week starts on the first day of the month.)</entry>
|
||||
</row>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>WW</literal></entry>
|
||||
<entry>week number of year (1-53) (The first week starts on the first day of the year.)</entry>
|
||||
@ -5276,7 +5276,7 @@ SELECT SUBSTRING('XY1234Z', 'Y*?([0-9]{1,3})');
|
||||
<entry><literal>TH</literal> suffix</entry>
|
||||
<entry>upper case ordinal number suffix</entry>
|
||||
<entry><literal>DDTH</literal>, e.g., <literal>12TH</></entry>
|
||||
</row>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>th</literal> suffix</entry>
|
||||
<entry>lower case ordinal number suffix</entry>
|
||||
@ -5286,18 +5286,18 @@ SELECT SUBSTRING('XY1234Z', 'Y*?([0-9]{1,3})');
|
||||
<entry><literal>FX</literal> prefix</entry>
|
||||
<entry>fixed format global option (see usage notes)</entry>
|
||||
<entry><literal>FX Month DD Day</literal></entry>
|
||||
</row>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>TM</literal> prefix</entry>
|
||||
<entry>translation mode (print localized day and month names based on
|
||||
<xref linkend="guc-lc-time">)</entry>
|
||||
<entry><literal>TMMonth</literal></entry>
|
||||
</row>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>SP</literal> suffix</entry>
|
||||
<entry>spell mode (not implemented)</entry>
|
||||
<entry><literal>DDSP</literal></entry>
|
||||
</row>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</table>
|
||||
@ -5369,8 +5369,8 @@ SELECT SUBSTRING('XY1234Z', 'Y*?([0-9]{1,3})');
|
||||
use some non-digit character or template after <literal>YYYY</literal>,
|
||||
otherwise the year is always interpreted as 4 digits. For example
|
||||
(with the year 20000):
|
||||
<literal>to_date('200001131', 'YYYYMMDD')</literal> will be
|
||||
interpreted as a 4-digit year; instead use a non-digit
|
||||
<literal>to_date('200001131', 'YYYYMMDD')</literal> will be
|
||||
interpreted as a 4-digit year; instead use a non-digit
|
||||
separator after the year, like
|
||||
<literal>to_date('20000-1131', 'YYYY-MMDD')</literal> or
|
||||
<literal>to_date('20000Nov31', 'YYYYMonDD')</literal>.
|
||||
@ -5425,7 +5425,7 @@ SELECT SUBSTRING('XY1234Z', 'Y*?([0-9]{1,3})');
|
||||
In a conversion from string to <type>timestamp</type>, millisecond
|
||||
(<literal>MS</literal>) or microsecond (<literal>US</literal>)
|
||||
values are used as the
|
||||
seconds digits after the decimal point. For example
|
||||
seconds digits after the decimal point. For example
|
||||
<literal>to_timestamp('12:3', 'SS:MS')</literal> is not 3 milliseconds,
|
||||
but 300, because the conversion counts it as 12 + 0.3 seconds.
|
||||
This means for the format <literal>SS:MS</literal>, the input values
|
||||
@ -5436,11 +5436,11 @@ SELECT SUBSTRING('XY1234Z', 'Y*?([0-9]{1,3})');
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Here is a more
|
||||
complex example:
|
||||
Here is a more
|
||||
complex example:
|
||||
<literal>to_timestamp('15:12:02.020.001230', 'HH:MI:SS.MS.US')</literal>
|
||||
is 15 hours, 12 minutes, and 2 seconds + 20 milliseconds +
|
||||
1230 microseconds = 2.021230 seconds.
|
||||
1230 microseconds = 2.021230 seconds.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
@ -5491,7 +5491,7 @@ SELECT SUBSTRING('XY1234Z', 'Y*?([0-9]{1,3})');
|
||||
<row>
|
||||
<entry><literal>.</literal> (period)</entry>
|
||||
<entry>decimal point</entry>
|
||||
</row>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>,</literal> (comma)</entry>
|
||||
<entry>group (thousand) separator</entry>
|
||||
@ -5568,7 +5568,7 @@ SELECT SUBSTRING('XY1234Z', 'Y*?([0-9]{1,3})');
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
<literal>9</literal> results in a value with the same number of
|
||||
<literal>9</literal> results in a value with the same number of
|
||||
digits as there are <literal>9</literal>s. If a digit is
|
||||
not available it outputs a space.
|
||||
</para>
|
||||
@ -5585,7 +5585,7 @@ SELECT SUBSTRING('XY1234Z', 'Y*?([0-9]{1,3})');
|
||||
<para>
|
||||
<literal>PL</literal>, <literal>SG</literal>, and
|
||||
<literal>TH</literal> are <productname>PostgreSQL</productname>
|
||||
extensions.
|
||||
extensions.
|
||||
</para>
|
||||
</listitem>
|
||||
|
||||
@ -5642,7 +5642,7 @@ SELECT SUBSTRING('XY1234Z', 'Y*?([0-9]{1,3})');
|
||||
<entry><literal>TH</literal> suffix</entry>
|
||||
<entry>upper case ordinal number suffix</entry>
|
||||
<entry><literal>999TH</literal></entry>
|
||||
</row>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>th</literal> suffix</entry>
|
||||
<entry>lower case ordinal number suffix</entry>
|
||||
@ -5674,7 +5674,7 @@ SELECT SUBSTRING('XY1234Z', 'Y*?([0-9]{1,3})');
|
||||
<row>
|
||||
<entry><literal>to_char(current_timestamp, 'FMDay, FMDD HH12:MI:SS')</literal></entry>
|
||||
<entry><literal>'Tuesday, 6 05:39:18'</literal></entry>
|
||||
</row>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>to_char(-0.1, '99.99')</literal></entry>
|
||||
<entry><literal>' -.10'</literal></entry>
|
||||
@ -5729,7 +5729,7 @@ SELECT SUBSTRING('XY1234Z', 'Y*?([0-9]{1,3})');
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>to_char(148.5, '999D999')</literal></entry>
|
||||
<entry><literal>' 148,500'</literal></entry>
|
||||
<entry><literal>' 148,500'</literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>to_char(3148.5, '9G999D999')</literal></entry>
|
||||
@ -5739,57 +5739,57 @@ SELECT SUBSTRING('XY1234Z', 'Y*?([0-9]{1,3})');
|
||||
<entry><literal>to_char(-485, '999S')</literal></entry>
|
||||
<entry><literal>'485-'</literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<row>
|
||||
<entry><literal>to_char(-485, '999MI')</literal></entry>
|
||||
<entry><literal>'485-'</literal></entry>
|
||||
<entry><literal>'485-'</literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>to_char(485, '999MI')</literal></entry>
|
||||
<entry><literal>'485 '</literal></entry>
|
||||
<entry><literal>'485 '</literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>to_char(485, 'FM999MI')</literal></entry>
|
||||
<entry><literal>'485'</literal></entry>
|
||||
<entry><literal>'485'</literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>to_char(485, 'PL999')</literal></entry>
|
||||
<entry><literal>'+485'</literal></entry>
|
||||
<entry><literal>'+485'</literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<row>
|
||||
<entry><literal>to_char(485, 'SG999')</literal></entry>
|
||||
<entry><literal>'+485'</literal></entry>
|
||||
<entry><literal>'+485'</literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>to_char(-485, 'SG999')</literal></entry>
|
||||
<entry><literal>'-485'</literal></entry>
|
||||
<entry><literal>'-485'</literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>to_char(-485, '9SG99')</literal></entry>
|
||||
<entry><literal>'4-85'</literal></entry>
|
||||
<entry><literal>'4-85'</literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>to_char(-485, '999PR')</literal></entry>
|
||||
<entry><literal>'<485>'</literal></entry>
|
||||
<entry><literal>'<485>'</literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>to_char(485, 'L999')</literal></entry>
|
||||
<entry><literal>'DM 485</literal></entry>
|
||||
<entry><literal>'DM 485</literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>to_char(485, 'RN')</literal></entry>
|
||||
<entry><literal>to_char(485, 'RN')</literal></entry>
|
||||
<entry><literal>' CDLXXXV'</literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>to_char(485, 'FMRN')</literal></entry>
|
||||
<entry><literal>to_char(485, 'FMRN')</literal></entry>
|
||||
<entry><literal>'CDLXXXV'</literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>to_char(5.2, 'FMRN')</literal></entry>
|
||||
<entry><literal>'V'</literal></entry>
|
||||
<entry><literal>'V'</literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>to_char(482, '999th')</literal></entry>
|
||||
<entry><literal>' 482nd'</literal></entry>
|
||||
<entry><literal>' 482nd'</literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>to_char(485, '"Good number:"999')</literal></entry>
|
||||
@ -5800,14 +5800,14 @@ SELECT SUBSTRING('XY1234Z', 'Y*?([0-9]{1,3})');
|
||||
<entry><literal>'Pre: 485 Post: .800'</literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>to_char(12, '99V999')</literal></entry>
|
||||
<entry><literal>to_char(12, '99V999')</literal></entry>
|
||||
<entry><literal>' 12000'</literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><literal>to_char(12.4, '99V999')</literal></entry>
|
||||
<entry><literal>' 12400'</literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<row>
|
||||
<entry><literal>to_char(12.45, '99V9')</literal></entry>
|
||||
<entry><literal>' 125'</literal></entry>
|
||||
</row>
|
||||
@ -6301,20 +6301,20 @@ SELECT (DATE '2001-10-30', DATE '2001-10-30') OVERLAPS
|
||||
</screen>
|
||||
|
||||
<para>
|
||||
When adding an <type>interval</type> value to (or subtracting an
|
||||
<type>interval</type> value from) a <type>timestamp with time zone</type>
|
||||
value, the days component advances (or decrements) the date of the
|
||||
<type>timestamp with time zone</type> by the indicated number of days.
|
||||
Across daylight saving time changes (with the session time zone set to a
|
||||
time zone that recognizes DST), this means <literal>interval '1 day'</literal>
|
||||
does not necessarily equal <literal>interval '24 hours'</literal>.
|
||||
When adding an <type>interval</type> value to (or subtracting an
|
||||
<type>interval</type> value from) a <type>timestamp with time zone</type>
|
||||
value, the days component advances (or decrements) the date of the
|
||||
<type>timestamp with time zone</type> by the indicated number of days.
|
||||
Across daylight saving time changes (with the session time zone set to a
|
||||
time zone that recognizes DST), this means <literal>interval '1 day'</literal>
|
||||
does not necessarily equal <literal>interval '24 hours'</literal>.
|
||||
For example, with the session time zone set to <literal>CST7CDT</literal>,
|
||||
<literal>timestamp with time zone '2005-04-02 12:00-07' + interval '1 day' </literal>
|
||||
will produce <literal>timestamp with time zone '2005-04-03 12:00-06'</literal>,
|
||||
while adding <literal>interval '24 hours'</literal> to the same initial
|
||||
will produce <literal>timestamp with time zone '2005-04-03 12:00-06'</literal>,
|
||||
while adding <literal>interval '24 hours'</literal> to the same initial
|
||||
<type>timestamp with time zone</type> produces
|
||||
<literal>timestamp with time zone '2005-04-03 13:00-06'</literal>, as there is
|
||||
a change in daylight saving time at <literal>2005-04-03 02:00</literal> in time zone
|
||||
a change in daylight saving time at <literal>2005-04-03 02:00</literal> in time zone
|
||||
<literal>CST7CDT</literal>.
|
||||
</para>
|
||||
|
||||
@ -6704,9 +6704,9 @@ SELECT EXTRACT(SECOND FROM TIME '17:12:28.5');
|
||||
a year is in week 1 of that year.
|
||||
</para>
|
||||
<para>
|
||||
Because of this, it is possible for early January dates to be part of the
|
||||
Because of this, it is possible for early January dates to be part of the
|
||||
52nd or 53rd week of the previous year. For example, <literal>2005-01-01</>
|
||||
is part of the 53rd week of year 2004, and <literal>2006-01-01</> is part of
|
||||
is part of the 53rd week of year 2004, and <literal>2006-01-01</> is part of
|
||||
the 52nd week of year 2005.
|
||||
</para>
|
||||
|
||||
@ -6721,7 +6721,7 @@ SELECT EXTRACT(WEEK FROM TIMESTAMP '2001-02-16 20:38:40');
|
||||
<term><literal>year</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
The year field. Keep in mind there is no <literal>0 AD</>, so subtracting
|
||||
The year field. Keep in mind there is no <literal>0 AD</>, so subtracting
|
||||
<literal>BC</> years from <literal>AD</> years should be done with care.
|
||||
</para>
|
||||
|
||||
@ -6900,7 +6900,7 @@ SELECT TIMESTAMP WITH TIME ZONE '2001-02-16 20:38:40-05' AT TIME ZONE 'MST';
|
||||
<lineannotation>Result: </lineannotation><computeroutput>2001-02-16 18:38:40</computeroutput>
|
||||
</screen>
|
||||
The first example takes a time stamp without time zone and interprets it as MST time
|
||||
(UTC-7), which is then converted to PST (UTC-8) for display. The second example takes
|
||||
(UTC-7), which is then converted to PST (UTC-8) for display. The second example takes
|
||||
a time stamp specified in EST (UTC-5) and converts it to local time in MST (UTC-7).
|
||||
</para>
|
||||
|
||||
@ -6908,7 +6908,7 @@ SELECT TIMESTAMP WITH TIME ZONE '2001-02-16 20:38:40-05' AT TIME ZONE 'MST';
|
||||
The function <literal><function>timezone</function>(<replaceable>zone</>,
|
||||
<replaceable>timestamp</>)</literal> is equivalent to the SQL-conforming construct
|
||||
<literal><replaceable>timestamp</> AT TIME ZONE
|
||||
<replaceable>zone</></literal>.
|
||||
<replaceable>zone</></literal>.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
@ -7110,7 +7110,7 @@ SELECT pg_sleep(1.5);
|
||||
|
||||
</sect1>
|
||||
|
||||
|
||||
|
||||
<sect1 id="functions-enum">
|
||||
<title>Enum Support Functions</title>
|
||||
|
||||
@ -8936,7 +8936,7 @@ SELECT xpath_exists('/my:a/text()', '<my:a xmlns:my="http://example.com">test</m
|
||||
<synopsis>
|
||||
table_to_xml(tbl regclass, nulls boolean, tableforest boolean, targetns text)
|
||||
query_to_xml(query text, nulls boolean, tableforest boolean, targetns text)
|
||||
cursor_to_xml(cursor refcursor, count int, nulls boolean,
|
||||
cursor_to_xml(cursor refcursor, count int, nulls boolean,
|
||||
tableforest boolean, targetns text)
|
||||
</synopsis>
|
||||
The return type of each function is <type>xml</type>.
|
||||
@ -9569,7 +9569,7 @@ SELECT ... WHERE CASE WHEN x <> 0 THEN y/x > 1.5 ELSE false END;
|
||||
<para>
|
||||
The <function>COALESCE</function> function returns the first of its
|
||||
arguments that is not null. Null is returned only if all arguments
|
||||
are null. It is often used to substitute a default value for
|
||||
are null. It is often used to substitute a default value for
|
||||
null values when data is retrieved for display, for example:
|
||||
<programlisting>
|
||||
SELECT COALESCE(description, short_description, '(none)') ...
|
||||
@ -11803,7 +11803,7 @@ FROM (SELECT generate_subscripts(a, 1) AS s, a FROM arrays) foo;
|
||||
-- unnest a 2D array
|
||||
CREATE OR REPLACE FUNCTION unnest2(anyarray)
|
||||
RETURNS SETOF anyelement AS $$
|
||||
select $1[i][j]
|
||||
select $1[i][j]
|
||||
from generate_subscripts($1,1) g1(i),
|
||||
generate_subscripts($1,2) g2(j);
|
||||
$$ LANGUAGE sql IMMUTABLE;
|
||||
@ -13398,7 +13398,7 @@ SELECT set_config('log_statement_stats', 'off', false);
|
||||
<para>
|
||||
<function>pg_rotate_logfile</> signals the log-file manager to switch
|
||||
to a new output file immediately. This works only when the built-in
|
||||
log collector is running, since otherwise there is no log-file manager
|
||||
log collector is running, since otherwise there is no log-file manager
|
||||
subprocess.
|
||||
</para>
|
||||
|
||||
@ -14114,7 +14114,7 @@ SELECT (pg_stat_file('filename')).modification;
|
||||
<para>
|
||||
<function>pg_advisory_lock</> locks an application-defined resource,
|
||||
which can be identified either by a single 64-bit key value or two
|
||||
32-bit key values (note that these two key spaces do not overlap).
|
||||
32-bit key values (note that these two key spaces do not overlap).
|
||||
The key type is specified in <literal>pg_locks.objid</>. If
|
||||
another session already holds a lock on the same resource, the
|
||||
function will wait until the resource becomes available. The lock
|
||||
@ -14193,7 +14193,7 @@ SELECT (pg_stat_file('filename')).modification;
|
||||
|
||||
<para>
|
||||
Currently <productname>PostgreSQL</> provides one built in trigger
|
||||
function, <function>suppress_redundant_updates_trigger</>,
|
||||
function, <function>suppress_redundant_updates_trigger</>,
|
||||
which will prevent any update
|
||||
that does not actually change the data in the row from taking place, in
|
||||
contrast to the normal behavior which always performs the update
|
||||
@ -14209,19 +14209,19 @@ SELECT (pg_stat_file('filename')).modification;
|
||||
and space in dead rows that will eventually have to be vacuumed.
|
||||
However, detecting such situations in client code is not
|
||||
always easy, or even possible, and writing expressions to detect
|
||||
them can be error-prone. An alternative is to use
|
||||
them can be error-prone. An alternative is to use
|
||||
<function>suppress_redundant_updates_trigger</>, which will skip
|
||||
updates that don't change the data. You should use this with care,
|
||||
however. The trigger takes a small but non-trivial time for each record,
|
||||
however. The trigger takes a small but non-trivial time for each record,
|
||||
so if most of the records affected by an update are actually changed,
|
||||
use of this trigger will actually make the update run slower.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The <function>suppress_redundant_updates_trigger</> function can be
|
||||
The <function>suppress_redundant_updates_trigger</> function can be
|
||||
added to a table like this:
|
||||
<programlisting>
|
||||
CREATE TRIGGER z_min_update
|
||||
CREATE TRIGGER z_min_update
|
||||
BEFORE UPDATE ON tablename
|
||||
FOR EACH ROW EXECUTE PROCEDURE suppress_redundant_updates_trigger();
|
||||
</programlisting>
|
||||
|
@ -63,13 +63,13 @@
|
||||
database, and several geographic information systems.
|
||||
<productname>POSTGRES</productname> has also been used as an
|
||||
educational tool at several universities. Finally, Illustra
|
||||
Information Technologies (later merged into
|
||||
Information Technologies (later merged into
|
||||
<ulink url="http://www.informix.com/"><productname>Informix</productname></ulink>,
|
||||
which is now owned by <ulink
|
||||
url="http://www.ibm.com/">IBM</ulink>) picked up the code and
|
||||
commercialized it. In late 1992,
|
||||
<productname>POSTGRES</productname> became the primary data manager
|
||||
for the
|
||||
for the
|
||||
<ulink url="http://meteora.ucsd.edu/s2k/s2k_home.html">
|
||||
Sequoia 2000 scientific computing project</ulink>.
|
||||
</para>
|
||||
|
@ -27,7 +27,7 @@
|
||||
<term>Web Site</term>
|
||||
<listitem>
|
||||
<para>
|
||||
The <productname>PostgreSQL</productname>
|
||||
The <productname>PostgreSQL</productname>
|
||||
<ulink url="http://www.postgresql.org">web site</ulink>
|
||||
carries details on the latest release and other
|
||||
information to make your work or play with
|
||||
|
@ -9,7 +9,7 @@
|
||||
</indexterm>
|
||||
|
||||
<para>
|
||||
It is recommended that most users download the binary distribution for
|
||||
It is recommended that most users download the binary distribution for
|
||||
Windows, available as a one-click installer package
|
||||
from the <productname>PostgreSQL</productname> website. Building from source
|
||||
is only intended for people developing <productname>PostgreSQL</productname>
|
||||
@ -37,7 +37,7 @@
|
||||
<para>
|
||||
Finally, the client access library
|
||||
(<application>libpq</application>) can be built using
|
||||
<productname>Visual C++ 7.1</productname> or
|
||||
<productname>Visual C++ 7.1</productname> or
|
||||
<productname>Borland C++</productname> for compatibility with statically
|
||||
linked applications built using these tools.
|
||||
</para>
|
||||
@ -50,7 +50,7 @@
|
||||
These builds cannot generate 64-bit binaries.
|
||||
<productname>Cygwin</productname> is not recommended and should
|
||||
only be used for older versions of <productname>Windows</productname> where
|
||||
the native build does not work, such as
|
||||
the native build does not work, such as
|
||||
<productname>Windows 98</productname>. <productname>MinGW</productname> is
|
||||
only recommended if you are building other modules using it. The official
|
||||
binaries are built using <productname>Visual Studio</productname>.
|
||||
@ -180,7 +180,7 @@ $ENV{PATH}=$ENV{PATH} . ';c:\some\where\bison\bin';
|
||||
building from a release file. Note that only Bison 1.875 or versions
|
||||
2.2 and later will work. Also, Flex version 2.5.31 or later is required.
|
||||
Bison can be downloaded from <ulink url="http://gnuwin32.sourceforge.net"></>.
|
||||
Flex can be downloaded from
|
||||
Flex can be downloaded from
|
||||
<ulink url="http://www.postgresql.org/ftp/misc/winflex/"></>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
@ -206,7 +206,7 @@ $ENV{PATH}=$ENV{PATH} . ';c:\some\where\bison\bin';
|
||||
<term><productname>MIT Kerberos</productname></term>
|
||||
<listitem><para>
|
||||
Required for Kerberos authentication support. MIT Kerberos can be
|
||||
downloaded from
|
||||
downloaded from
|
||||
<ulink url="http://web.mit.edu/Kerberos/dist/index.html"></>.
|
||||
</para></listitem>
|
||||
</varlistentry>
|
||||
@ -234,7 +234,7 @@ $ENV{PATH}=$ENV{PATH} . ';c:\some\where\bison\bin';
|
||||
<varlistentry>
|
||||
<term><productname>ossp-uuid</productname></term>
|
||||
<listitem><para>
|
||||
Required for UUID-OSSP support (contrib only). Source can be
|
||||
Required for UUID-OSSP support (contrib only). Source can be
|
||||
downloaded from
|
||||
<ulink url="http://www.ossp.org/pkg/lib/uuid/"></>.
|
||||
</para></listitem>
|
||||
@ -494,7 +494,7 @@ $ENV{DOCROOT}='c:\docbook';
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry>
|
||||
<term><filename>interfaces\libpq\Release\libpqdll.lib</filename></term>
|
||||
<listitem>
|
||||
|
@ -18,7 +18,7 @@
|
||||
<para>
|
||||
SQL distinguishes between <firstterm>reserved</firstterm> and
|
||||
<firstterm>non-reserved</firstterm> key words. According to the standard,
|
||||
reserved key words
|
||||
reserved key words
|
||||
are the only real key words; they are never allowed as identifiers.
|
||||
Non-reserved key words only have a special meaning in particular
|
||||
contexts and can be used as identifiers in other contexts. Most
|
||||
|
@ -15,7 +15,7 @@
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<productname>Postgres95</productname> is Copyright © 1994-5
|
||||
<productname>Postgres95</productname> is Copyright © 1994-5
|
||||
by the Regents of the University of California.
|
||||
</para>
|
||||
|
||||
|
@ -461,7 +461,7 @@ PGconn *PQconnectdbParams(const char **keywords, const char **values, int expand
|
||||
This parameter specifies the file name of the client SSL
|
||||
certificate, replacing the default
|
||||
<filename>~/.postgresql/postgresql.crt</>.
|
||||
This parameter is ignored if an SSL connection is not made.
|
||||
This parameter is ignored if an SSL connection is not made.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
@ -42,7 +42,7 @@
|
||||
This makes the large object facility partially obsolete. One
|
||||
remaining advantage of the large object facility is that it allows values
|
||||
up to 2 GB in size, whereas <acronym>TOAST</acronym>ed fields can be at
|
||||
most 1 GB. Also, large objects can be randomly modified using a read/write
|
||||
most 1 GB. Also, large objects can be randomly modified using a read/write
|
||||
API that is more efficient than performing such operations using
|
||||
<acronym>TOAST</acronym>.
|
||||
</para>
|
||||
@ -64,11 +64,11 @@
|
||||
As of <productname>PostgreSQL</> 9.0, large objects have an owner
|
||||
and a set of access permissions, which can be managed using
|
||||
<xref linkend="sql-grant"> and
|
||||
<xref linkend="sql-revoke">.
|
||||
<xref linkend="sql-revoke">.
|
||||
For compatibility with prior releases, see
|
||||
<xref linkend="guc-lo-compat-privileges">.
|
||||
<literal>SELECT</literal> privileges are required to read a large
|
||||
object, and
|
||||
object, and
|
||||
<literal>UPDATE</literal> privileges are required to write to or
|
||||
truncate it.
|
||||
Only the large object owner (or the database superuser) can unlink, comment
|
||||
@ -108,7 +108,7 @@
|
||||
Oid lo_creat(PGconn *conn, int mode);
|
||||
</synopsis>
|
||||
<indexterm><primary>lo_creat</></>
|
||||
creates a new large object.
|
||||
creates a new large object.
|
||||
The return value is the OID that was assigned to the new large object,
|
||||
or <symbol>InvalidOid</symbol> (zero) on failure.
|
||||
|
||||
@ -167,7 +167,7 @@ inv_oid = lo_create(conn, desired_oid);
|
||||
Oid lo_import(PGconn *conn, const char *filename);
|
||||
</synopsis>
|
||||
<indexterm><primary>lo_import</></>
|
||||
<replaceable class="parameter">filename</replaceable>
|
||||
<replaceable class="parameter">filename</replaceable>
|
||||
specifies the operating system name of
|
||||
the file to be imported as a large object.
|
||||
The return value is the OID that was assigned to the new large object,
|
||||
@ -238,7 +238,7 @@ int lo_open(PGconn *conn, Oid lobjId, int mode);
|
||||
descriptor for later use in <function>lo_read</function>,
|
||||
<function>lo_write</function>, <function>lo_lseek</function>,
|
||||
<function>lo_tell</function>, and <function>lo_close</function>.
|
||||
The descriptor is only valid for
|
||||
The descriptor is only valid for
|
||||
the duration of the current transaction.
|
||||
On failure, -1 is returned.
|
||||
</para>
|
||||
@ -462,9 +462,9 @@ SELECT lo_export(image.raster, '/tmp/motd') FROM image
|
||||
<title>Example Program</title>
|
||||
|
||||
<para>
|
||||
<xref linkend="lo-example"> is a sample program which shows how the large object
|
||||
<xref linkend="lo-example"> is a sample program which shows how the large object
|
||||
interface
|
||||
in <application>libpq</> can be used. Parts of the program are
|
||||
in <application>libpq</> can be used. Parts of the program are
|
||||
commented out but are left in the source for the reader's
|
||||
benefit. This program can also be found in
|
||||
<filename>src/test/examples/testlo.c</filename> in the source distribution.
|
||||
|
@ -25,10 +25,10 @@
|
||||
</indexterm>
|
||||
|
||||
<para>
|
||||
<productname>PostgreSQL</productname> provides a rich set of tools
|
||||
<productname>PostgreSQL</productname> provides a rich set of tools
|
||||
for developers to manage concurrent access to data. Internally,
|
||||
data consistency is maintained by using a multiversion
|
||||
model (Multiversion Concurrency Control, <acronym>MVCC</acronym>).
|
||||
data consistency is maintained by using a multiversion
|
||||
model (Multiversion Concurrency Control, <acronym>MVCC</acronym>).
|
||||
This means that while querying a database each transaction sees
|
||||
a snapshot of data (a <firstterm>database version</firstterm>)
|
||||
as it was some
|
||||
@ -38,7 +38,7 @@
|
||||
data rows, providing <firstterm>transaction isolation</firstterm>
|
||||
for each database session. <acronym>MVCC</acronym>, by eschewing
|
||||
explicit locking methodologies of traditional database systems,
|
||||
minimizes lock contention in order to allow for reasonable
|
||||
minimizes lock contention in order to allow for reasonable
|
||||
performance in multiuser environments.
|
||||
</para>
|
||||
|
||||
|
@ -61,7 +61,7 @@ archive_cleanup_command = 'pg_archivecleanup <replaceable>archivelocation</> %r'
|
||||
<synopsis>
|
||||
pg_archivecleanup <optional> <replaceable>option</> ... </optional> <replaceable>archivelocation</> <replaceable>restartwalfile</>
|
||||
</synopsis>
|
||||
When used as a standalone program all WAL files logically preceding the
|
||||
When used as a standalone program all WAL files logically preceding the
|
||||
<literal>restartwalfile</> will be removed <replaceable>archivelocation</>.
|
||||
In this mode, if you specify a <filename>.backup</> file name, then only the file prefix
|
||||
will be used as the <literal>restartwalfile</>. This allows you to remove
|
||||
|
@ -148,57 +148,57 @@
|
||||
<procedure>
|
||||
<step performance="optional">
|
||||
<title>Optionally move the old cluster</title>
|
||||
|
||||
|
||||
<para>
|
||||
If you are using a version-specific installation directory, e.g.
|
||||
<filename>/opt/PostgreSQL/8.4</>, you do not need to move the old cluster. The
|
||||
one-click installers all use version-specific installation directories.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
|
||||
<para>
|
||||
If your installation directory is not version-specific, e.g.
|
||||
<filename>/usr/local/pgsql</>, it is necessary to move the current PostgreSQL install
|
||||
directory so it does not interfere with the new <productname>PostgreSQL</> installation.
|
||||
Once the current <productname>PostgreSQL</> server is shut down, it is safe to rename the
|
||||
PostgreSQL installation directory; assuming the old directory is
|
||||
<filename>/usr/local/pgsql</>, you can do:
|
||||
|
||||
|
||||
<programlisting>
|
||||
mv /usr/local/pgsql /usr/local/pgsql.old
|
||||
</programlisting>
|
||||
to rename the directory.
|
||||
</para>
|
||||
</step>
|
||||
|
||||
|
||||
<step>
|
||||
<title>For source installs, build the new version</title>
|
||||
|
||||
|
||||
<para>
|
||||
Build the new PostgreSQL source with <command>configure</> flags that are compatible
|
||||
with the old cluster. <application>pg_upgrade</> will check <command>pg_controldata</> to make
|
||||
sure all settings are compatible before starting the upgrade.
|
||||
</para>
|
||||
</step>
|
||||
|
||||
|
||||
<step>
|
||||
<title>Install the new PostgreSQL binaries</title>
|
||||
|
||||
|
||||
<para>
|
||||
Install the new server's binaries and support files. You can use the
|
||||
same port numbers for both clusters, typically 5432, because the old and
|
||||
new clusters will not be running at the same time.
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
For source installs, if you wish to install the new server in a custom
|
||||
location, use the <literal>prefix</literal> variable:
|
||||
|
||||
|
||||
<programlisting>
|
||||
gmake prefix=/usr/local/pgsql.new install
|
||||
</programlisting>
|
||||
</para>
|
||||
</step>
|
||||
|
||||
|
||||
<step>
|
||||
<title>Install pg_upgrade and pg_upgrade_support</title>
|
||||
|
||||
@ -207,10 +207,10 @@ gmake prefix=/usr/local/pgsql.new install
|
||||
<application>pg_upgrade_support</> in the new PostgreSQL cluster
|
||||
</para>
|
||||
</step>
|
||||
|
||||
|
||||
<step>
|
||||
<title>Initialize the new PostgreSQL cluster</title>
|
||||
|
||||
|
||||
<para>
|
||||
Initialize the new cluster using <command>initdb</command>.
|
||||
Again, use compatible <command>initdb</command>
|
||||
@ -219,10 +219,10 @@ gmake prefix=/usr/local/pgsql.new install
|
||||
start the new cluster.
|
||||
</para>
|
||||
</step>
|
||||
|
||||
|
||||
<step>
|
||||
<title>Install custom shared object files</title>
|
||||
|
||||
|
||||
<para>
|
||||
Install any custom shared object files (or DLLs) used by the old cluster
|
||||
into the new cluster, e.g. <filename>pgcrypto.so</filename>, whether they are from <filename>contrib</filename>
|
||||
@ -230,10 +230,10 @@ gmake prefix=/usr/local/pgsql.new install
|
||||
<filename>pgcrypto.sql</>, because these will be migrated from the old cluster.
|
||||
</para>
|
||||
</step>
|
||||
|
||||
|
||||
<step>
|
||||
<title>Adjust authentication</title>
|
||||
|
||||
|
||||
<para>
|
||||
<command>pg_upgrade</> will connect to the old and new servers several times,
|
||||
so you might want to set authentication to <literal>trust</> in
|
||||
@ -242,36 +242,36 @@ gmake prefix=/usr/local/pgsql.new install
|
||||
to avoid being prompted repeatedly for a password.
|
||||
</para>
|
||||
</step>
|
||||
|
||||
|
||||
<step>
|
||||
<title>Stop both servers</title>
|
||||
|
||||
|
||||
<para>
|
||||
Make sure both database servers are stopped using, on Unix, e.g.:
|
||||
|
||||
|
||||
<programlisting>
|
||||
pg_ctl -D /opt/PostgreSQL/8.4 stop
|
||||
pg_ctl -D /opt/PostgreSQL/9.0 stop
|
||||
</programlisting>
|
||||
|
||||
|
||||
or on Windows, using the proper service names:
|
||||
|
||||
|
||||
<programlisting>
|
||||
NET STOP postgresql-8.4
|
||||
NET STOP postgresql-9.0
|
||||
</programlisting>
|
||||
|
||||
|
||||
or
|
||||
|
||||
|
||||
<programlisting>
|
||||
NET STOP pgsql-8.3 (<productname>PostgreSQL</> 8.3 and older used a different service name)
|
||||
</programlisting>
|
||||
</para>
|
||||
</step>
|
||||
|
||||
|
||||
<step>
|
||||
<title>Run <application>pg_upgrade</></title>
|
||||
|
||||
|
||||
<para>
|
||||
Always run the <application>pg_upgrade</> binary of the new server, not the old one.
|
||||
<application>pg_upgrade</> requires the specification of the old and new cluster's
|
||||
@ -282,18 +282,18 @@ NET STOP pgsql-8.3 (<productname>PostgreSQL</> 8.3 and older used a different s
|
||||
old cluster once you start the new cluster after the upgrade. See
|
||||
<literal>pg_upgrade --help</> for a full list of options.
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
For Windows users, you must be logged into an administrative account, and
|
||||
then start a shell as the <literal>postgres</> user and set the proper path:
|
||||
|
||||
|
||||
<programlisting>
|
||||
RUNAS /USER:postgres "CMD.EXE"
|
||||
SET PATH=%PATH%;C:\Program Files\PostgreSQL\9.0\bin;
|
||||
</programlisting>
|
||||
|
||||
|
||||
and then run <application>pg_upgrade</> with quoted directories, e.g.:
|
||||
|
||||
|
||||
<programlisting>
|
||||
pg_upgrade.exe
|
||||
--old-datadir "C:/Program Files/PostgreSQL/8.4/data"
|
||||
@ -301,7 +301,7 @@ pg_upgrade.exe
|
||||
--old-bindir "C:/Program Files/PostgreSQL/8.4/bin"
|
||||
--new-bindir "C:/Program Files/PostgreSQL/9.0/bin"
|
||||
</programlisting>
|
||||
|
||||
|
||||
Once started, <command>pg_upgrade</> will verify the two clusters are compatible
|
||||
and then do the migration. You can use <command>pg_upgrade --check</>
|
||||
to perform only the checks, even if the old server is still
|
||||
@ -309,11 +309,11 @@ pg_upgrade.exe
|
||||
manual adjustments you will need to make after the migration.
|
||||
<command>pg_upgrade</> requires write permission in the current directory.
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
Obviously, no one should be accessing the clusters during the migration.
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
If an error occurs while restoring the database schema, <command>pg_upgrade</> will
|
||||
exit and you will have to revert to the old cluster as outlined in <xref linkend="pgupgrade-step-revert">
|
||||
@ -324,35 +324,35 @@ pg_upgrade.exe
|
||||
assuming the module is not being used to store user data.
|
||||
</para>
|
||||
</step>
|
||||
|
||||
|
||||
<step>
|
||||
<title>Restore <filename>pg_hba.conf</></title>
|
||||
|
||||
|
||||
<para>
|
||||
If you modified <filename>pg_hba.conf</> to use <literal>trust</>,
|
||||
restore its original authentication settings.
|
||||
</para>
|
||||
</step>
|
||||
|
||||
|
||||
<step>
|
||||
<title>Post-migration processing</title>
|
||||
|
||||
|
||||
<para>
|
||||
If any post-migration processing is required, pg_upgrade will issue
|
||||
warnings as it completes. It will also generate script files that must
|
||||
be run by the administrator. The script files will connect to each
|
||||
database that needs post-migration processing. Each script should be
|
||||
run using:
|
||||
|
||||
|
||||
<programlisting>
|
||||
psql --username postgres --file script.sql postgres
|
||||
</programlisting>
|
||||
|
||||
|
||||
The scripts can be run in any order and can be deleted once they have
|
||||
been run.
|
||||
</para>
|
||||
|
||||
<caution>
|
||||
<caution>
|
||||
<para>
|
||||
In general it is unsafe to access tables referenced in rebuild scripts
|
||||
until the rebuild scripts have run to completion; doing so could yield
|
||||
@ -361,7 +361,7 @@ psql --username postgres --file script.sql postgres
|
||||
</para>
|
||||
</caution>
|
||||
</step>
|
||||
|
||||
|
||||
<step>
|
||||
<title>Statistics</title>
|
||||
|
||||
@ -371,10 +371,10 @@ psql --username postgres --file script.sql postgres
|
||||
of the migration.
|
||||
</para>
|
||||
</step>
|
||||
|
||||
|
||||
<step>
|
||||
<title>Delete old cluster</title>
|
||||
|
||||
|
||||
<para>
|
||||
Once you are satisfied with the upgrade, you can delete the old
|
||||
cluster's data directories by running the script mentioned when
|
||||
@ -383,10 +383,10 @@ psql --username postgres --file script.sql postgres
|
||||
(e.g. <filename>bin</>, <filename>share</>).
|
||||
</para>
|
||||
</step>
|
||||
|
||||
|
||||
<step id="pgupgrade-step-revert" performance="optional">
|
||||
<title>Reverting to old cluster</title>
|
||||
|
||||
|
||||
<para>
|
||||
If, after running <command>pg_upgrade</command>, you wish to revert to the old cluster,
|
||||
there are several options:
|
||||
@ -430,12 +430,12 @@ psql --username postgres --file script.sql postgres
|
||||
</para>
|
||||
</step>
|
||||
</procedure>
|
||||
|
||||
|
||||
</sect2>
|
||||
|
||||
|
||||
<sect2>
|
||||
<title>Limitations in Migrating <emphasis>from</> PostgreSQL 8.3</title>
|
||||
|
||||
|
||||
<para>
|
||||
Upgrading from PostgreSQL 8.3 has additional restrictions not present
|
||||
when upgrading from later PostgreSQL releases. For example,
|
||||
@ -458,7 +458,7 @@ psql --username postgres --file script.sql postgres
|
||||
<para>
|
||||
You must drop any such columns and migrate them manually.
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
pg_upgrade will require a table rebuild if:
|
||||
<itemizedlist>
|
||||
@ -469,7 +469,7 @@ psql --username postgres --file script.sql postgres
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
pg_upgrade will require a reindex if:
|
||||
<itemizedlist>
|
||||
@ -485,14 +485,14 @@ psql --username postgres --file script.sql postgres
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
Also, the default datetime storage format changed to integer after
|
||||
<productname>PostgreSQL</> 8.3. pg_upgrade will check that the datetime storage format
|
||||
used by the old and new clusters match. Make sure your new cluster is
|
||||
built with the configure flag <option>--disable-integer-datetimes</>.
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
For Windows users, note that due to different integer datetimes settings
|
||||
used by the one-click installer and the MSI installer, it is only
|
||||
@ -502,31 +502,31 @@ psql --username postgres --file script.sql postgres
|
||||
</para>
|
||||
|
||||
</sect2>
|
||||
|
||||
|
||||
<sect2>
|
||||
<title>Notes</title>
|
||||
|
||||
<para>
|
||||
|
||||
<para>
|
||||
<application>pg_upgrade</> does not support migration of databases
|
||||
containing these <type>reg*</> OID-referencing system data types:
|
||||
<type>regproc</>, <type>regprocedure</>, <type>regoper</>,
|
||||
<type>regoperator</>, <type>regclass</>, <type>regconfig</>, and
|
||||
<type>regdictionary</>. (<type>regtype</> can be migrated.)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
|
||||
<para>
|
||||
All failure, rebuild, and reindex cases will be reported by
|
||||
<application>pg_upgrade</> if they affect your installation;
|
||||
post-migration scripts to rebuild tables and indexes will be
|
||||
generated automatically.
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
For deployment testing, create a schema-only copy of the old cluster,
|
||||
insert dummy data, and migrate that.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
|
||||
<para>
|
||||
If you want to use link mode and you don't want your old cluster
|
||||
to be modified when the new cluster is started, make a copy of the
|
||||
old cluster and migrate that with link mode. To make a valid copy
|
||||
@ -535,7 +535,7 @@ psql --username postgres --file script.sql postgres
|
||||
the old server and run <command>rsync</> again to update the copy with any
|
||||
changes to make it consistent.
|
||||
</para>
|
||||
|
||||
|
||||
</sect2>
|
||||
|
||||
|
||||
</sect1>
|
||||
|
@ -286,8 +286,8 @@ SELECT * FROM perl_set();
|
||||
</para>
|
||||
|
||||
<para>
|
||||
If you wish to use the <literal>strict</> pragma with your code you
|
||||
have a few options. For temporary global use you can <command>SET</>
|
||||
If you wish to use the <literal>strict</> pragma with your code you
|
||||
have a few options. For temporary global use you can <command>SET</>
|
||||
<literal>plperl.use_strict</literal> to true.
|
||||
This will affect subsequent compilations of <application>PL/Perl</>
|
||||
functions, but not functions already compiled in the current session.
|
||||
@ -523,7 +523,7 @@ $plan = spi_prepare('SELECT * FROM test WHERE id > $1 AND name = $2',
|
||||
by <literal>spi_exec_query</literal>, or in <literal>spi_query_prepared</literal> which returns a cursor
|
||||
exactly as <literal>spi_query</literal> does, which can be later passed to <literal>spi_fetchrow</literal>.
|
||||
The optional second parameter to <literal>spi_exec_prepared</literal> is a hash reference of attributes;
|
||||
the only attribute currently supported is <literal>limit</literal>, which sets the maximum number of rows returned by a query.
|
||||
the only attribute currently supported is <literal>limit</literal>, which sets the maximum number of rows returned by a query.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@ -1303,8 +1303,8 @@ DO 'elog(WARNING, join ", ", sort keys %INC)' language plperl;
|
||||
<para>
|
||||
When a session ends normally, not due to a fatal error, any
|
||||
<literal>END</> blocks that have been defined are executed.
|
||||
Currently no other actions are performed. Specifically,
|
||||
file handles are not automatically flushed and objects are
|
||||
Currently no other actions are performed. Specifically,
|
||||
file handles are not automatically flushed and objects are
|
||||
not automatically destroyed.
|
||||
</para>
|
||||
</listitem>
|
||||
|
@ -302,7 +302,7 @@ $$ LANGUAGE pltcl;
|
||||
If the command is a <command>SELECT</> statement and no <replaceable>loop-body</>
|
||||
script is given, then only the first row of results are stored into
|
||||
Tcl variables; remaining rows, if any, are ignored. No storing occurs
|
||||
if the
|
||||
if the
|
||||
query returns no rows. (This case can be detected by checking the
|
||||
result of <function>spi_exec</function>.) For example:
|
||||
<programlisting>
|
||||
@ -763,7 +763,7 @@ CREATE TRIGGER trig_mytab_modcount BEFORE INSERT OR UPDATE ON mytab
|
||||
different function definitions as long as the number of arguments or their types
|
||||
differ. Tcl, however, requires all procedure names to be distinct.
|
||||
PL/Tcl deals with this by making the internal Tcl procedure names contain
|
||||
the object
|
||||
the object
|
||||
ID of the function from the system table <structname>pg_proc</> as part of their name. Thus,
|
||||
<productname>PostgreSQL</productname> functions with the same name
|
||||
and different argument types will be different Tcl procedures, too. This
|
||||
|
@ -8,7 +8,7 @@
|
||||
hear about it. Your bug reports play an important part in making
|
||||
<productname>PostgreSQL</productname> more reliable because even the utmost
|
||||
care cannot guarantee that every part of
|
||||
<productname>PostgreSQL</productname>
|
||||
<productname>PostgreSQL</productname>
|
||||
will work on every platform under every circumstance.
|
||||
</para>
|
||||
|
||||
@ -301,7 +301,7 @@
|
||||
message, perhaps parts of the error message.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<para>
|
||||
Another method is to fill in the bug report web-form available
|
||||
at the project's
|
||||
<ulink url="http://www.postgresql.org/">web site</ulink>.
|
||||
@ -316,7 +316,7 @@
|
||||
reported privately to <email>security@postgresql.org</email>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<para>
|
||||
Do not send bug reports to any of the user mailing lists, such as
|
||||
<email>pgsql-sql@postgresql.org</email> or
|
||||
<email>pgsql-general@postgresql.org</email>.
|
||||
|
@ -30,7 +30,7 @@ ABORT [ WORK | TRANSACTION ]
|
||||
|
||||
<para>
|
||||
<command>ABORT</command> rolls back the current transaction and causes
|
||||
all the updates made by the transaction to be discarded.
|
||||
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">,
|
||||
|
@ -13,8 +13,8 @@ PostgreSQL documentation
|
||||
<refnamediv>
|
||||
<refname>ALTER AGGREGATE</refname>
|
||||
<refpurpose>change the definition of an aggregate function</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
</refnamediv>
|
||||
|
||||
<indexterm zone="sql-alteraggregate">
|
||||
<primary>ALTER AGGREGATE</primary>
|
||||
</indexterm>
|
||||
@ -26,7 +26,7 @@ ALTER AGGREGATE <replaceable>name</replaceable> ( <replaceable>type</replaceable
|
||||
ALTER AGGREGATE <replaceable>name</replaceable> ( <replaceable>type</replaceable> [ , ... ] ) SET SCHEMA <replaceable>new_schema</replaceable>
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
@ -47,7 +47,7 @@ ALTER AGGREGATE <replaceable>name</replaceable> ( <replaceable>type</replaceable
|
||||
aggregate function anyway.)
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
|
@ -13,8 +13,8 @@ PostgreSQL documentation
|
||||
<refnamediv>
|
||||
<refname>ALTER CONVERSION</refname>
|
||||
<refpurpose>change the definition of a conversion</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
</refnamediv>
|
||||
|
||||
<indexterm zone="sql-alterconversion">
|
||||
<primary>ALTER CONVERSION</primary>
|
||||
</indexterm>
|
||||
@ -25,7 +25,7 @@ ALTER CONVERSION <replaceable>name</replaceable> RENAME TO <replaceable>new_name
|
||||
ALTER CONVERSION <replaceable>name</replaceable> OWNER TO <replaceable>new_owner</replaceable>
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
@ -44,7 +44,7 @@ ALTER CONVERSION <replaceable>name</replaceable> OWNER TO <replaceable>new_owner
|
||||
anyway.)
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
|
@ -51,7 +51,7 @@ ALTER DATABASE <replaceable class="PARAMETER">name</replaceable> RESET ALL
|
||||
<para>
|
||||
The first form changes certain per-database settings. (See below for
|
||||
details.) Only the database owner or a superuser can change these settings.
|
||||
</para>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The second form changes the name of the database. Only the database
|
||||
@ -114,7 +114,7 @@ ALTER DATABASE <replaceable class="PARAMETER">name</replaceable> RESET ALL
|
||||
to this database. -1 means no limit.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><replaceable>new_name</replaceable></term>
|
||||
@ -141,7 +141,7 @@ ALTER DATABASE <replaceable class="PARAMETER">name</replaceable> RESET ALL
|
||||
The new default tablespace of the database.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><replaceable>configuration_parameter</replaceable></term>
|
||||
@ -196,7 +196,7 @@ ALTER DATABASE test SET enable_indexscan TO off;
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
||||
<para>
|
||||
The <command>ALTER DATABASE</command> statement is a
|
||||
<productname>PostgreSQL</productname> extension.
|
||||
|
@ -32,9 +32,9 @@ ALTER DOMAIN <replaceable class="PARAMETER">name</replaceable>
|
||||
ALTER DOMAIN <replaceable class="PARAMETER">name</replaceable>
|
||||
DROP CONSTRAINT <replaceable class="PARAMETER">constraint_name</replaceable> [ RESTRICT | CASCADE ]
|
||||
ALTER DOMAIN <replaceable class="PARAMETER">name</replaceable>
|
||||
OWNER TO <replaceable class="PARAMETER">new_owner</replaceable>
|
||||
OWNER TO <replaceable class="PARAMETER">new_owner</replaceable>
|
||||
ALTER DOMAIN <replaceable class="PARAMETER">name</replaceable>
|
||||
SET SCHEMA <replaceable class="PARAMETER">new_schema</replaceable>
|
||||
SET SCHEMA <replaceable class="PARAMETER">new_schema</replaceable>
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
@ -247,7 +247,7 @@ ALTER DOMAIN zipcode SET SCHEMA customers;
|
||||
|
||||
<refsect1 id="SQL-ALTERDOMAIN-compatibility">
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
||||
<para>
|
||||
<command>ALTER DOMAIN</command> conforms to the <acronym>SQL</acronym>
|
||||
standard,
|
||||
|
@ -13,8 +13,8 @@ PostgreSQL documentation
|
||||
<refnamediv>
|
||||
<refname>ALTER FUNCTION</refname>
|
||||
<refpurpose>change the definition of a function</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
</refnamediv>
|
||||
|
||||
<indexterm zone="sql-alterfunction">
|
||||
<primary>ALTER FUNCTION</primary>
|
||||
</indexterm>
|
||||
@ -43,7 +43,7 @@ ALTER FUNCTION <replaceable>name</replaceable> ( [ [ <replaceable class="paramet
|
||||
RESET ALL
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
@ -63,7 +63,7 @@ ALTER FUNCTION <replaceable>name</replaceable> ( [ [ <replaceable class="paramet
|
||||
However, a superuser can alter ownership of any function anyway.)
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -112,7 +112,7 @@ ALTER FUNCTION <replaceable>name</replaceable> ( [ [ <replaceable class="paramet
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
The data type(s) of the function's arguments (optionally
|
||||
The data type(s) of the function's arguments (optionally
|
||||
schema-qualified), if any.
|
||||
</para>
|
||||
</listitem>
|
||||
|
@ -50,7 +50,7 @@ ALTER GROUP <replaceable class="PARAMETER">group_name</replaceable> RENAME TO <r
|
||||
|
||||
<para>
|
||||
The third variant changes the name of the group. This is exactly
|
||||
equivalent to renaming the role with
|
||||
equivalent to renaming the role with
|
||||
<xref linkend="sql-alterrole">.
|
||||
</para>
|
||||
</refsect1>
|
||||
@ -110,7 +110,7 @@ ALTER GROUP workers DROP USER beth;
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
||||
<para>
|
||||
There is no <command>ALTER GROUP</command> statement in the SQL
|
||||
standard.
|
||||
|
@ -41,7 +41,7 @@ ALTER INDEX <replaceable class="PARAMETER">name</replaceable> RESET ( <replaceab
|
||||
<term><literal>RENAME</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
The <literal>RENAME</literal> form changes the name of the index.
|
||||
The <literal>RENAME</literal> form changes the name of the index.
|
||||
There is no effect on the stored data.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -53,7 +53,7 @@ ALTER INDEX <replaceable class="PARAMETER">name</replaceable> RESET ( <replaceab
|
||||
<para>
|
||||
This form changes the index's tablespace to the specified tablespace and
|
||||
moves the data file(s) associated with the index to the new tablespace.
|
||||
See also
|
||||
See also
|
||||
<xref linkend="SQL-CREATETABLESPACE">.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -177,14 +177,14 @@ ALTER INDEX distributors RENAME TO suppliers;
|
||||
</programlisting>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<para>
|
||||
To move an index to a different tablespace:
|
||||
<programlisting>
|
||||
ALTER INDEX distributors SET TABLESPACE fasttablespace;
|
||||
</programlisting>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<para>
|
||||
To change an index's fill factor (assuming that the index method
|
||||
supports it):
|
||||
<programlisting>
|
||||
|
@ -72,7 +72,7 @@ ALTER [ PROCEDURAL ] LANGUAGE <replaceable>name</replaceable> OWNER TO <replacea
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
||||
<para>
|
||||
There is no <command>ALTER LANGUAGE</command> statement in the SQL
|
||||
standard.
|
||||
|
@ -62,7 +62,7 @@ ALTER LARGE OBJECT <replaceable class="PARAMETER">large_object_oid</replaceable>
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
||||
<para>
|
||||
There is no <command>ALTER LARGE OBJECT</command> statement in the SQL
|
||||
standard.
|
||||
|
@ -13,8 +13,8 @@ PostgreSQL documentation
|
||||
<refnamediv>
|
||||
<refname>ALTER OPERATOR CLASS</refname>
|
||||
<refpurpose>change the definition of an operator class</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
</refnamediv>
|
||||
|
||||
<indexterm zone="sql-alteropclass">
|
||||
<primary>ALTER OPERATOR CLASS</primary>
|
||||
</indexterm>
|
||||
@ -25,7 +25,7 @@ ALTER OPERATOR CLASS <replaceable>name</replaceable> USING <replaceable class="p
|
||||
ALTER OPERATOR CLASS <replaceable>name</replaceable> USING <replaceable class="parameter">index_method</replaceable> OWNER TO <replaceable>new_owner</replaceable>
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
@ -44,7 +44,7 @@ ALTER OPERATOR CLASS <replaceable>name</replaceable> USING <replaceable class="p
|
||||
class anyway.)
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
|
@ -13,8 +13,8 @@ PostgreSQL documentation
|
||||
<refnamediv>
|
||||
<refname>ALTER OPERATOR</refname>
|
||||
<refpurpose>change the definition of an operator</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
</refnamediv>
|
||||
|
||||
<indexterm zone="sql-alteroperator">
|
||||
<primary>ALTER OPERATOR</primary>
|
||||
</indexterm>
|
||||
@ -24,7 +24,7 @@ PostgreSQL documentation
|
||||
ALTER OPERATOR <replaceable>name</replaceable> ( { <replaceable>left_type</replaceable> | NONE } , { <replaceable>right_type</replaceable> | NONE } ) OWNER TO <replaceable>new_owner</replaceable>
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
@ -43,7 +43,7 @@ ALTER OPERATOR <replaceable>name</replaceable> ( { <replaceable>left_type</repla
|
||||
However, a superuser can alter ownership of any operator anyway.)
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -98,7 +98,7 @@ ALTER OPERATOR @@ (text, text) OWNER TO joe;
|
||||
</programlisting>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -13,8 +13,8 @@ PostgreSQL documentation
|
||||
<refnamediv>
|
||||
<refname>ALTER OPERATOR FAMILY</refname>
|
||||
<refpurpose>change the definition of an operator family</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
</refnamediv>
|
||||
|
||||
<indexterm zone="sql-alteropfamily">
|
||||
<primary>ALTER OPERATOR FAMILY</primary>
|
||||
</indexterm>
|
||||
@ -33,7 +33,7 @@ ALTER OPERATOR FAMILY <replaceable>name</replaceable> USING <replaceable class="
|
||||
ALTER OPERATOR FAMILY <replaceable>name</replaceable> USING <replaceable class="parameter">index_method</replaceable> OWNER TO <replaceable>new_owner</replaceable>
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
@ -81,7 +81,7 @@ ALTER OPERATOR FAMILY <replaceable>name</replaceable> USING <replaceable class="
|
||||
Refer to <xref linkend="xindex"> for further information.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -208,7 +208,7 @@ ALTER OPERATOR FAMILY <replaceable>name</replaceable> USING <replaceable class="
|
||||
</para>
|
||||
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
@ -244,7 +244,7 @@ ALTER OPERATOR FAMILY <replaceable>name</replaceable> USING <replaceable class="
|
||||
cases where an operator might or might not be lossy.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
||||
@ -272,7 +272,7 @@ ALTER OPERATOR FAMILY integer_ops USING btree ADD
|
||||
OPERATOR 4 >= (int2, int4) ,
|
||||
OPERATOR 5 > (int2, int4) ,
|
||||
FUNCTION 1 btint24cmp(int2, int4) ;
|
||||
</programlisting>
|
||||
</programlisting>
|
||||
|
||||
<para>
|
||||
To remove these entries again:
|
||||
@ -296,7 +296,7 @@ ALTER OPERATOR FAMILY integer_ops USING btree DROP
|
||||
OPERATOR 4 (int2, int4) ,
|
||||
OPERATOR 5 (int2, int4) ,
|
||||
FUNCTION 1 (int2, int4) ;
|
||||
</programlisting>
|
||||
</programlisting>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
|
@ -81,7 +81,7 @@ ALTER SCHEMA <replaceable>name</replaceable> OWNER TO <replaceable>new_owner</re
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
||||
<para>
|
||||
There is no <command>ALTER SCHEMA</command> statement in the SQL
|
||||
standard.
|
||||
|
@ -15,7 +15,7 @@ PostgreSQL documentation
|
||||
<refpurpose>
|
||||
change the definition of a sequence generator
|
||||
</refpurpose>
|
||||
</refnamediv>
|
||||
</refnamediv>
|
||||
|
||||
<indexterm zone="sql-altersequence">
|
||||
<primary>ALTER SEQUENCE</primary>
|
||||
|
@ -13,8 +13,8 @@ PostgreSQL documentation
|
||||
<refnamediv>
|
||||
<refname>ALTER TABLESPACE</refname>
|
||||
<refpurpose>change the definition of a tablespace</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
</refnamediv>
|
||||
|
||||
<indexterm zone="sql-altertablespace">
|
||||
<primary>ALTER TABLESPACE</primary>
|
||||
</indexterm>
|
||||
@ -27,7 +27,7 @@ ALTER TABLESPACE <replaceable>name</replaceable> SET ( <replaceable class="PARAM
|
||||
ALTER TABLESPACE <replaceable>name</replaceable> RESET ( <replaceable class="PARAMETER">tablespace_option</replaceable> [, ... ] )
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
@ -43,7 +43,7 @@ ALTER TABLESPACE <replaceable>name</replaceable> RESET ( <replaceable class="PAR
|
||||
(Note that superusers have these privileges automatically.)
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -114,7 +114,7 @@ ALTER TABLESPACE index_space OWNER TO mary;
|
||||
</programlisting>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -13,8 +13,8 @@ PostgreSQL documentation
|
||||
<refnamediv>
|
||||
<refname>ALTER TEXT SEARCH CONFIGURATION</refname>
|
||||
<refpurpose>change the definition of a text search configuration</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
</refnamediv>
|
||||
|
||||
<indexterm zone="sql-altertsconfig">
|
||||
<primary>ALTER TEXT SEARCH CONFIGURATION</primary>
|
||||
</indexterm>
|
||||
@ -35,7 +35,7 @@ ALTER TEXT SEARCH CONFIGURATION <replaceable>name</replaceable> RENAME TO <repla
|
||||
ALTER TEXT SEARCH CONFIGURATION <replaceable>name</replaceable> OWNER TO <replaceable>new_owner</replaceable>
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
@ -51,7 +51,7 @@ ALTER TEXT SEARCH CONFIGURATION <replaceable>name</replaceable> OWNER TO <replac
|
||||
<command>ALTER TEXT SEARCH CONFIGURATION</>.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -156,7 +156,7 @@ ALTER TEXT SEARCH CONFIGURATION <replaceable>name</replaceable> OWNER TO <replac
|
||||
<programlisting>
|
||||
ALTER TEXT SEARCH CONFIGURATION my_config
|
||||
ALTER MAPPING REPLACE english WITH swedish;
|
||||
</programlisting>
|
||||
</programlisting>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
|
@ -13,8 +13,8 @@ PostgreSQL documentation
|
||||
<refnamediv>
|
||||
<refname>ALTER TEXT SEARCH DICTIONARY</refname>
|
||||
<refpurpose>change the definition of a text search dictionary</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
</refnamediv>
|
||||
|
||||
<indexterm zone="sql-altertsdictionary">
|
||||
<primary>ALTER TEXT SEARCH DICTIONARY</primary>
|
||||
</indexterm>
|
||||
@ -28,7 +28,7 @@ ALTER TEXT SEARCH DICTIONARY <replaceable>name</replaceable> RENAME TO <replacea
|
||||
ALTER TEXT SEARCH DICTIONARY <replaceable>name</replaceable> OWNER TO <replaceable>new_owner</replaceable>
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
@ -43,7 +43,7 @@ ALTER TEXT SEARCH DICTIONARY <replaceable>name</replaceable> OWNER TO <replaceab
|
||||
<command>ALTER TEXT SEARCH DICTIONARY</>.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -102,7 +102,7 @@ ALTER TEXT SEARCH DICTIONARY <replaceable>name</replaceable> OWNER TO <replaceab
|
||||
Template-specific options can appear in any order.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
||||
@ -113,7 +113,7 @@ ALTER TEXT SEARCH DICTIONARY <replaceable>name</replaceable> OWNER TO <replaceab
|
||||
|
||||
<programlisting>
|
||||
ALTER TEXT SEARCH DICTIONARY my_dict ( StopWords = newrussian );
|
||||
</programlisting>
|
||||
</programlisting>
|
||||
|
||||
<para>
|
||||
The following example command changes the language option to dutch,
|
||||
@ -122,7 +122,7 @@ ALTER TEXT SEARCH DICTIONARY my_dict ( StopWords = newrussian );
|
||||
|
||||
<programlisting>
|
||||
ALTER TEXT SEARCH DICTIONARY my_dict ( language = dutch, StopWords );
|
||||
</programlisting>
|
||||
</programlisting>
|
||||
|
||||
<para>
|
||||
The following example command <quote>updates</> the dictionary's
|
||||
|
@ -13,8 +13,8 @@ PostgreSQL documentation
|
||||
<refnamediv>
|
||||
<refname>ALTER TEXT SEARCH PARSER</refname>
|
||||
<refpurpose>change the definition of a text search parser</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
</refnamediv>
|
||||
|
||||
<indexterm zone="sql-altertsparser">
|
||||
<primary>ALTER TEXT SEARCH PARSER</primary>
|
||||
</indexterm>
|
||||
@ -24,7 +24,7 @@ PostgreSQL documentation
|
||||
ALTER TEXT SEARCH PARSER <replaceable>name</replaceable> RENAME TO <replaceable>new_name</replaceable>
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
@ -38,7 +38,7 @@ ALTER TEXT SEARCH PARSER <replaceable>name</replaceable> RENAME TO <replaceable>
|
||||
You must be a superuser to use <command>ALTER TEXT SEARCH PARSER</>.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
|
@ -13,8 +13,8 @@ PostgreSQL documentation
|
||||
<refnamediv>
|
||||
<refname>ALTER TEXT SEARCH TEMPLATE</refname>
|
||||
<refpurpose>change the definition of a text search template</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
</refnamediv>
|
||||
|
||||
<indexterm zone="sql-altertstemplate">
|
||||
<primary>ALTER TEXT SEARCH TEMPLATE</primary>
|
||||
</indexterm>
|
||||
@ -24,7 +24,7 @@ PostgreSQL documentation
|
||||
ALTER TEXT SEARCH TEMPLATE <replaceable>name</replaceable> RENAME TO <replaceable>new_name</replaceable>
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
@ -38,7 +38,7 @@ ALTER TEXT SEARCH TEMPLATE <replaceable>name</replaceable> RENAME TO <replaceabl
|
||||
You must be a superuser to use <command>ALTER TEXT SEARCH TEMPLATE</>.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
|
@ -24,7 +24,7 @@ PostgreSQL documentation
|
||||
ALTER USER <replaceable class="PARAMETER">name</replaceable> [ [ WITH ] <replaceable class="PARAMETER">option</replaceable> [ ... ] ]
|
||||
|
||||
<phrase>where <replaceable class="PARAMETER">option</replaceable> can be:</phrase>
|
||||
|
||||
|
||||
SUPERUSER | NOSUPERUSER
|
||||
| CREATEDB | NOCREATEDB
|
||||
| CREATEROLE | NOCREATEROLE
|
||||
@ -33,7 +33,7 @@ ALTER USER <replaceable class="PARAMETER">name</replaceable> [ [ WITH ] <replace
|
||||
| LOGIN | NOLOGIN
|
||||
| CONNECTION LIMIT <replaceable class="PARAMETER">connlimit</replaceable>
|
||||
| [ ENCRYPTED | UNENCRYPTED ] PASSWORD '<replaceable class="PARAMETER">password</replaceable>'
|
||||
| VALID UNTIL '<replaceable class="PARAMETER">timestamp</replaceable>'
|
||||
| VALID UNTIL '<replaceable class="PARAMETER">timestamp</replaceable>'
|
||||
|
||||
ALTER USER <replaceable class="PARAMETER">name</replaceable> RENAME TO <replaceable>new_name</replaceable>
|
||||
|
||||
@ -55,7 +55,7 @@ ALTER USER <replaceable class="PARAMETER">name</replaceable> RESET ALL
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
||||
<para>
|
||||
The <command>ALTER USER</command> statement is a
|
||||
<productname>PostgreSQL</productname> extension. The SQL standard
|
||||
|
@ -13,8 +13,8 @@ PostgreSQL documentation
|
||||
<refnamediv>
|
||||
<refname>ALTER VIEW</refname>
|
||||
<refpurpose>change the definition of a view</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
</refnamediv>
|
||||
|
||||
<indexterm zone="sql-alterview">
|
||||
<primary>ALTER VIEW</primary>
|
||||
</indexterm>
|
||||
@ -28,7 +28,7 @@ ALTER VIEW <replaceable class="parameter">name</replaceable> RENAME TO <replacea
|
||||
ALTER VIEW <replaceable class="parameter">name</replaceable> SET SCHEMA <replaceable class="parameter">new_schema</replaceable>
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
@ -49,7 +49,7 @@ ALTER VIEW <replaceable class="parameter">name</replaceable> SET SCHEMA <replace
|
||||
However, a superuser can alter ownership of any view anyway.)
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
|
@ -29,7 +29,7 @@ BEGIN [ WORK | TRANSACTION ] [ <replaceable class="parameter">transaction_mode</
|
||||
READ WRITE | READ ONLY
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
@ -59,11 +59,11 @@ BEGIN [ WORK | TRANSACTION ] [ <replaceable class="parameter">transaction_mode</
|
||||
<para>
|
||||
If the isolation level or read/write mode is specified, the new
|
||||
transaction has those characteristics, as if
|
||||
<xref linkend="sql-set-transaction">
|
||||
<xref linkend="sql-set-transaction">
|
||||
was executed.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -84,7 +84,7 @@ BEGIN [ WORK | TRANSACTION ] [ <replaceable class="parameter">transaction_mode</
|
||||
of the other parameters to this statement.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
@ -92,7 +92,7 @@ BEGIN [ WORK | TRANSACTION ] [ <replaceable class="parameter">transaction_mode</
|
||||
<xref linkend="sql-start-transaction"> has the same functionality
|
||||
as <command>BEGIN</>.
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
Use <xref linkend="SQL-COMMIT"> or
|
||||
<xref linkend="SQL-ROLLBACK">
|
||||
@ -102,7 +102,7 @@ BEGIN [ WORK | TRANSACTION ] [ <replaceable class="parameter">transaction_mode</
|
||||
<para>
|
||||
Issuing <command>BEGIN</> when already inside a transaction block will
|
||||
provoke a warning message. The state of the transaction is not affected.
|
||||
To nest transactions within a transaction block, use savepoints
|
||||
To nest transactions within a transaction block, use savepoints
|
||||
(see <xref linkend="sql-savepoint">).
|
||||
</para>
|
||||
|
||||
@ -124,7 +124,7 @@ BEGIN;
|
||||
</programlisting>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -51,7 +51,7 @@ CLOSE { <replaceable class="PARAMETER">name</replaceable> | ALL }
|
||||
disconnects.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -110,10 +110,10 @@ CLOSE liahona;
|
||||
</programlisting>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
||||
<para>
|
||||
<command>CLOSE</command> is fully conforming with the SQL
|
||||
standard. <command>CLOSE ALL</> is a <productname>PostgreSQL</>
|
||||
|
@ -35,7 +35,7 @@ PostgreSQL documentation
|
||||
<group><arg>--all</arg><arg>-a</arg></group>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
@ -63,7 +63,7 @@ PostgreSQL documentation
|
||||
|
||||
<para>
|
||||
<application>clusterdb</application> accepts the following command-line arguments:
|
||||
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>-a</></term>
|
||||
@ -156,7 +156,7 @@ PostgreSQL documentation
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<application>clusterdb</application> also accepts
|
||||
<application>clusterdb</application> also accepts
|
||||
the following command-line arguments for connection parameters:
|
||||
|
||||
<variablelist>
|
||||
@ -177,7 +177,7 @@ PostgreSQL documentation
|
||||
<term><option>--port <replaceable class="parameter">port</replaceable></></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Specifies the TCP port or local Unix domain socket file
|
||||
Specifies the TCP port or local Unix domain socket file
|
||||
extension on which the server
|
||||
is listening for connections.
|
||||
</para>
|
||||
@ -215,7 +215,7 @@ PostgreSQL documentation
|
||||
<listitem>
|
||||
<para>
|
||||
Force <application>clusterdb</application> to prompt for a
|
||||
password before connecting to a database.
|
||||
password before connecting to a database.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
|
@ -70,12 +70,12 @@ COMMENT ON
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Comments can be viewed using <application>psql</application>'s
|
||||
Comments can be viewed using <application>psql</application>'s
|
||||
<command>\d</command> family of commands.
|
||||
Other user interfaces to retrieve comments can be built atop
|
||||
the same built-in functions that <application>psql</application> uses, namely
|
||||
<function>obj_description</>, <function>col_description</>,
|
||||
and <function>shobj_description</>
|
||||
and <function>shobj_description</>
|
||||
(see <xref linkend="functions-info-comment-table">).
|
||||
</para>
|
||||
</refsect1>
|
||||
@ -113,7 +113,7 @@ COMMENT ON
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
<varlistentry>
|
||||
<term><replaceable>source_type</replaceable></term>
|
||||
<listitem>
|
||||
@ -167,7 +167,7 @@ COMMENT ON
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
The data type(s) of the function's arguments (optionally
|
||||
The data type(s) of the function's arguments (optionally
|
||||
schema-qualified), if any.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -201,7 +201,7 @@ COMMENT ON
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
|
||||
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
|
@ -24,7 +24,7 @@ PostgreSQL documentation
|
||||
COMMIT [ WORK | TRANSACTION ]
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
@ -34,7 +34,7 @@ COMMIT [ WORK | TRANSACTION ]
|
||||
and are guaranteed to be durable if a crash occurs.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -78,7 +78,7 @@ COMMIT;
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
||||
<para>
|
||||
The SQL standard only specifies the two forms
|
||||
<literal>COMMIT</literal> and <literal>COMMIT
|
||||
|
@ -29,7 +29,7 @@ COMMIT PREPARED <replaceable class="PARAMETER">transaction_id</replaceable>
|
||||
<title>Description</title>
|
||||
|
||||
<para>
|
||||
<command>COMMIT PREPARED</command> commits a transaction that is in
|
||||
<command>COMMIT PREPARED</command> commits a transaction that is in
|
||||
prepared state.
|
||||
</para>
|
||||
</refsect1>
|
||||
@ -76,7 +76,7 @@ COMMIT PREPARED <replaceable class="PARAMETER">transaction_id</replaceable>
|
||||
<para>
|
||||
Commit the transaction identified by the transaction
|
||||
identifier <literal>foobar</>:
|
||||
|
||||
|
||||
<programlisting>
|
||||
COMMIT PREPARED 'foobar';
|
||||
</programlisting>
|
||||
|
@ -95,7 +95,7 @@ CREATE AGGREGATE <replaceable class="PARAMETER">name</replaceable> (
|
||||
value. If there is no final function then the ending state value
|
||||
is returned as-is.
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
An aggregate function can provide an initial condition,
|
||||
that is, an initial value for the internal state value.
|
||||
@ -104,7 +104,7 @@ CREATE AGGREGATE <replaceable class="PARAMETER">name</replaceable> (
|
||||
of a constant of the state value data type. If it is not supplied
|
||||
then the state value starts out null.
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
If the state transition function is declared <quote>strict</quote>,
|
||||
then it cannot be called with null inputs. With such a transition
|
||||
@ -122,14 +122,14 @@ CREATE AGGREGATE <replaceable class="PARAMETER">name</replaceable> (
|
||||
When these types are different, you must supply a nonnull initial
|
||||
condition or use a nonstrict transition function.
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
If the state transition function is not strict, then it will be called
|
||||
unconditionally at each input row, and must deal with null inputs
|
||||
and null transition values for itself. This allows the aggregate
|
||||
author to have full control over the aggregate's handling of null values.
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
If the final function is declared <quote>strict</quote>, then it will not
|
||||
be called when the ending state value is null; instead a null result
|
||||
@ -139,7 +139,7 @@ CREATE AGGREGATE <replaceable class="PARAMETER">name</replaceable> (
|
||||
<function>avg</function> returns null when it sees there were zero
|
||||
input rows.
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
Aggregates that behave like <function>MIN</> or <function>MAX</> can
|
||||
sometimes be optimized by looking into an index instead of scanning every
|
||||
@ -281,7 +281,7 @@ SELECT col FROM tab ORDER BY col USING sortop LIMIT 1;
|
||||
written in any order, not just the order illustrated above.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
||||
|
@ -22,7 +22,7 @@ CREATE [ DEFAULT ] CONVERSION <replaceable>name</replaceable>
|
||||
FOR <replaceable>source_encoding</replaceable> TO <replaceable>dest_encoding</replaceable> FROM <replaceable>function_name</replaceable>
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1 id="sql-createconversion-description">
|
||||
<title>Description</title>
|
||||
|
||||
@ -145,7 +145,7 @@ CREATE CONVERSION myconv FOR 'UTF8' TO 'LATIN1' FROM myfunc;
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
|
||||
<refsect1 id="sql-createconversion-compat">
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -421,7 +421,7 @@ CREATE [ OR REPLACE ] FUNCTION
|
||||
LOCAL</> command: the effects of such a command will persist after
|
||||
function exit, unless the current transaction is rolled back.
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
See <xref linkend="sql-set"> and
|
||||
<xref linkend="runtime-config">
|
||||
|
@ -24,7 +24,7 @@ PostgreSQL documentation
|
||||
CREATE GROUP <replaceable class="PARAMETER">name</replaceable> [ [ WITH ] <replaceable class="PARAMETER">option</replaceable> [ ... ] ]
|
||||
|
||||
<phrase>where <replaceable class="PARAMETER">option</replaceable> can be:</phrase>
|
||||
|
||||
|
||||
SUPERUSER | NOSUPERUSER
|
||||
| CREATEDB | NOCREATEDB
|
||||
| CREATEROLE | NOCREATEROLE
|
||||
@ -32,13 +32,13 @@ CREATE GROUP <replaceable class="PARAMETER">name</replaceable> [ [ WITH ] <repla
|
||||
| INHERIT | NOINHERIT
|
||||
| LOGIN | NOLOGIN
|
||||
| [ ENCRYPTED | UNENCRYPTED ] PASSWORD '<replaceable class="PARAMETER">password</replaceable>'
|
||||
| VALID UNTIL '<replaceable class="PARAMETER">timestamp</replaceable>'
|
||||
| VALID UNTIL '<replaceable class="PARAMETER">timestamp</replaceable>'
|
||||
| IN ROLE <replaceable class="PARAMETER">role_name</replaceable> [, ...]
|
||||
| IN GROUP <replaceable class="PARAMETER">role_name</replaceable> [, ...]
|
||||
| ROLE <replaceable class="PARAMETER">role_name</replaceable> [, ...]
|
||||
| ADMIN <replaceable class="PARAMETER">role_name</replaceable> [, ...]
|
||||
| USER <replaceable class="PARAMETER">role_name</replaceable> [, ...]
|
||||
| SYSID <replaceable class="PARAMETER">uid</replaceable>
|
||||
| SYSID <replaceable class="PARAMETER">uid</replaceable>
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
@ -49,11 +49,11 @@ CREATE GROUP <replaceable class="PARAMETER">name</replaceable> [ [ WITH ] <repla
|
||||
<command>CREATE GROUP</command> is now an alias for
|
||||
<xref linkend="sql-createrole">.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
||||
<para>
|
||||
There is no <command>CREATE GROUP</command> statement in the SQL
|
||||
standard.
|
||||
|
@ -39,7 +39,7 @@ CREATE OPERATOR CLASS <replaceable class="parameter">name</replaceable> [ DEFAUL
|
||||
an index. The operator class specifies that certain operators will fill
|
||||
particular roles or <quote>strategies</> for this data type and this
|
||||
index method. The operator class also specifies the support procedures to
|
||||
be used by
|
||||
be used by
|
||||
the index method when the operator class is selected for an
|
||||
index column. All the operators and functions used by an operator
|
||||
class must be defined before the operator class can be created.
|
||||
@ -80,7 +80,7 @@ CREATE OPERATOR CLASS <replaceable class="parameter">name</replaceable> [ DEFAUL
|
||||
Refer to <xref linkend="xindex"> for further information.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -228,7 +228,7 @@ CREATE OPERATOR CLASS <replaceable class="parameter">name</replaceable> [ DEFAUL
|
||||
clauses can appear in any order.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
@ -254,7 +254,7 @@ CREATE OPERATOR CLASS <replaceable class="parameter">name</replaceable> [ DEFAUL
|
||||
cases where an operator might or might not be lossy.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
||||
@ -279,9 +279,9 @@ CREATE OPERATOR CLASS gist__int_ops
|
||||
FUNCTION 5 g_int_penalty (internal, internal, internal),
|
||||
FUNCTION 6 g_int_picksplit (internal, internal),
|
||||
FUNCTION 7 g_int_same (_int4, _int4, internal);
|
||||
</programlisting>
|
||||
</programlisting>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -215,10 +215,10 @@ CREATE OPERATOR <replaceable>name</replaceable> (
|
||||
arguments, use the <literal>OPERATOR()</> syntax, for example:
|
||||
<programlisting>
|
||||
COMMUTATOR = OPERATOR(myschema.===) ,
|
||||
</programlisting>
|
||||
</programlisting>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
@ -248,7 +248,7 @@ COMMUTATOR = OPERATOR(myschema.===) ,
|
||||
database.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
||||
@ -266,10 +266,10 @@ CREATE OPERATOR === (
|
||||
JOIN = area_join_procedure,
|
||||
HASHES, MERGES
|
||||
);
|
||||
</programlisting>
|
||||
</programlisting>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -67,7 +67,7 @@ CREATE OPERATOR FAMILY <replaceable class="parameter">name</replaceable> USING <
|
||||
Refer to <xref linkend="xindex"> for further information.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -92,7 +92,7 @@ CREATE OPERATOR FAMILY <replaceable class="parameter">name</replaceable> USING <
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -24,7 +24,7 @@ PostgreSQL documentation
|
||||
CREATE ROLE <replaceable class="PARAMETER">name</replaceable> [ [ WITH ] <replaceable class="PARAMETER">option</replaceable> [ ... ] ]
|
||||
|
||||
<phrase>where <replaceable class="PARAMETER">option</replaceable> can be:</phrase>
|
||||
|
||||
|
||||
SUPERUSER | NOSUPERUSER
|
||||
| CREATEDB | NOCREATEDB
|
||||
| CREATEROLE | NOCREATEROLE
|
||||
@ -33,13 +33,13 @@ CREATE ROLE <replaceable class="PARAMETER">name</replaceable> [ [ WITH ] <replac
|
||||
| LOGIN | NOLOGIN
|
||||
| CONNECTION LIMIT <replaceable class="PARAMETER">connlimit</replaceable>
|
||||
| [ ENCRYPTED | UNENCRYPTED ] PASSWORD '<replaceable class="PARAMETER">password</replaceable>'
|
||||
| VALID UNTIL '<replaceable class="PARAMETER">timestamp</replaceable>'
|
||||
| VALID UNTIL '<replaceable class="PARAMETER">timestamp</replaceable>'
|
||||
| IN ROLE <replaceable class="PARAMETER">role_name</replaceable> [, ...]
|
||||
| IN GROUP <replaceable class="PARAMETER">role_name</replaceable> [, ...]
|
||||
| ROLE <replaceable class="PARAMETER">role_name</replaceable> [, ...]
|
||||
| ADMIN <replaceable class="PARAMETER">role_name</replaceable> [, ...]
|
||||
| USER <replaceable class="PARAMETER">role_name</replaceable> [, ...]
|
||||
| SYSID <replaceable class="PARAMETER">uid</replaceable>
|
||||
| SYSID <replaceable class="PARAMETER">uid</replaceable>
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
@ -301,7 +301,7 @@ CREATE ROLE <replaceable class="PARAMETER">name</replaceable> [ [ WITH ] <replac
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
</refsect1>
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
@ -417,14 +417,14 @@ CREATE ROLE miriam WITH LOGIN PASSWORD 'jw8s0F4' VALID UNTIL '2005-01-01';
|
||||
</programlisting>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<para>
|
||||
Create a role that can create databases and manage roles:
|
||||
<programlisting>
|
||||
CREATE ROLE admin WITH CREATEDB CREATEROLE;
|
||||
</programlisting>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
@ -438,7 +438,7 @@ CREATE ROLE <replaceable class="PARAMETER">name</> [ WITH ADMIN <replaceable cla
|
||||
<command>CREATE ROLE</command>, are
|
||||
<productname>PostgreSQL</productname> extensions.
|
||||
</para>
|
||||
|
||||
|
||||
<para>
|
||||
The SQL standard defines the concepts of users and roles, but it
|
||||
regards them as distinct concepts and leaves all commands defining
|
||||
|
@ -345,7 +345,7 @@ END;
|
||||
<listitem>
|
||||
<para>
|
||||
The <literal>OWNED BY</> clause is a <productname>PostgreSQL</>
|
||||
extension.
|
||||
extension.
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
|
@ -30,7 +30,7 @@ CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE <replaceable>table_name
|
||||
[ WITH [ NO ] DATA ]
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
@ -346,5 +346,5 @@ CREATE TEMP TABLE films_recent WITH (OIDS) ON COMMIT DROP AS
|
||||
<member><xref linkend="sql-values"></member>
|
||||
</simplelist>
|
||||
</refsect1>
|
||||
|
||||
|
||||
</refentry>
|
||||
|
@ -60,7 +60,7 @@ CREATE TEXT SEARCH CONFIGURATION <replaceable class="parameter">name</replaceabl
|
||||
Refer to <xref linkend="textsearch"> for further information.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -94,7 +94,7 @@ CREATE TEXT SEARCH CONFIGURATION <replaceable class="parameter">name</replaceabl
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
@ -105,7 +105,7 @@ CREATE TEXT SEARCH CONFIGURATION <replaceable class="parameter">name</replaceabl
|
||||
</para>
|
||||
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -53,7 +53,7 @@ CREATE TEXT SEARCH DICTIONARY <replaceable class="parameter">name</replaceable>
|
||||
Refer to <xref linkend="textsearch"> for further information.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -103,7 +103,7 @@ CREATE TEXT SEARCH DICTIONARY <replaceable class="parameter">name</replaceable>
|
||||
The options can appear in any order.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
||||
@ -118,9 +118,9 @@ CREATE TEXT SEARCH DICTIONARY my_russian (
|
||||
language = russian,
|
||||
stopwords = myrussian
|
||||
);
|
||||
</programlisting>
|
||||
</programlisting>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -58,7 +58,7 @@ CREATE TEXT SEARCH PARSER <replaceable class="parameter">name</replaceable> (
|
||||
Refer to <xref linkend="textsearch"> for further information.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -131,7 +131,7 @@ CREATE TEXT SEARCH PARSER <replaceable class="parameter">name</replaceable> (
|
||||
The arguments can appear in any order, not only the one shown above.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -59,7 +59,7 @@ CREATE TEXT SEARCH TEMPLATE <replaceable class="parameter">name</replaceable> (
|
||||
Refer to <xref linkend="textsearch"> for further information.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -104,7 +104,7 @@ CREATE TEXT SEARCH TEMPLATE <replaceable class="parameter">name</replaceable> (
|
||||
The arguments can appear in any order, not only the one shown above.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -24,7 +24,7 @@ PostgreSQL documentation
|
||||
CREATE USER <replaceable class="PARAMETER">name</replaceable> [ [ WITH ] <replaceable class="PARAMETER">option</replaceable> [ ... ] ]
|
||||
|
||||
<phrase>where <replaceable class="PARAMETER">option</replaceable> can be:</phrase>
|
||||
|
||||
|
||||
SUPERUSER | NOSUPERUSER
|
||||
| CREATEDB | NOCREATEDB
|
||||
| CREATEROLE | NOCREATEROLE
|
||||
@ -33,13 +33,13 @@ CREATE USER <replaceable class="PARAMETER">name</replaceable> [ [ WITH ] <replac
|
||||
| LOGIN | NOLOGIN
|
||||
| CONNECTION LIMIT <replaceable class="PARAMETER">connlimit</replaceable>
|
||||
| [ ENCRYPTED | UNENCRYPTED ] PASSWORD '<replaceable class="PARAMETER">password</replaceable>'
|
||||
| VALID UNTIL '<replaceable class="PARAMETER">timestamp</replaceable>'
|
||||
| VALID UNTIL '<replaceable class="PARAMETER">timestamp</replaceable>'
|
||||
| IN ROLE <replaceable class="PARAMETER">role_name</replaceable> [, ...]
|
||||
| IN GROUP <replaceable class="PARAMETER">role_name</replaceable> [, ...]
|
||||
| ROLE <replaceable class="PARAMETER">role_name</replaceable> [, ...]
|
||||
| ADMIN <replaceable class="PARAMETER">role_name</replaceable> [, ...]
|
||||
| USER <replaceable class="PARAMETER">role_name</replaceable> [, ...]
|
||||
| SYSID <replaceable class="PARAMETER">uid</replaceable>
|
||||
| SYSID <replaceable class="PARAMETER">uid</replaceable>
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
@ -56,10 +56,10 @@ CREATE USER <replaceable class="PARAMETER">name</replaceable> [ [ WITH ] <replac
|
||||
<command>CREATE ROLE</command>.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
||||
<para>
|
||||
The <command>CREATE USER</command> statement is a
|
||||
<productname>PostgreSQL</productname> extension. The SQL standard
|
||||
|
@ -193,7 +193,7 @@ PostgreSQL documentation
|
||||
</para>
|
||||
|
||||
<para>
|
||||
The options <option>-D</option>, <option>-l</option>, <option>-E</option>,
|
||||
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
|
||||
@ -210,8 +210,8 @@ PostgreSQL documentation
|
||||
<term><option>--host <replaceable class="parameter">host</replaceable></></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Specifies the host name of the machine on which the
|
||||
server is running. If the value begins with a slash, it is used
|
||||
Specifies the host name of the machine on which the
|
||||
server is running. If the value begins with a slash, it is used
|
||||
as the directory for the Unix domain socket.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -222,7 +222,7 @@ PostgreSQL documentation
|
||||
<term><option>--port <replaceable class="parameter">port</replaceable></></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Specifies the TCP port or the local Unix domain socket file
|
||||
Specifies the TCP port or the local Unix domain socket file
|
||||
extension on which the server is listening for connections.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -259,7 +259,7 @@ PostgreSQL documentation
|
||||
<listitem>
|
||||
<para>
|
||||
Force <application>createdb</application> to prompt for a
|
||||
password before connecting to a database.
|
||||
password before connecting to a database.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
|
@ -35,12 +35,12 @@ PostgreSQL documentation
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
<para>
|
||||
<application>createlang</application> is a utility for adding a new
|
||||
<application>createlang</application> is a utility for adding a new
|
||||
programming language to a <productname>PostgreSQL</productname> database.
|
||||
<application>createlang</application> is just a wrapper around the
|
||||
<xref linkend="sql-createlanguage">
|
||||
@ -54,7 +54,7 @@ PostgreSQL documentation
|
||||
|
||||
<para>
|
||||
<application>createlang</application> accepts the following command-line arguments:
|
||||
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><replaceable class="parameter">langname</replaceable></term>
|
||||
@ -123,18 +123,18 @@ PostgreSQL documentation
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<application>createlang</application> also accepts
|
||||
<application>createlang</application> also accepts
|
||||
the following command-line arguments for connection parameters:
|
||||
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>-h <replaceable class="parameter">host</replaceable></></term>
|
||||
<term><option>--host <replaceable class="parameter">host</replaceable></></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Specifies the host name of the machine on which the
|
||||
Specifies the host name of the machine on which the
|
||||
server
|
||||
is running. If the value begins with a slash, it is used
|
||||
is running. If the value begins with a slash, it is used
|
||||
as the directory for the Unix domain socket.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -145,7 +145,7 @@ PostgreSQL documentation
|
||||
<term><option>--port <replaceable class="parameter">port</replaceable></></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Specifies the TCP port or local Unix domain socket file
|
||||
Specifies the TCP port or local Unix domain socket file
|
||||
extension on which the server
|
||||
is listening for connections.
|
||||
</para>
|
||||
@ -183,7 +183,7 @@ PostgreSQL documentation
|
||||
<listitem>
|
||||
<para>
|
||||
Force <application>createlang</application> to prompt for a
|
||||
password before connecting to a database.
|
||||
password before connecting to a database.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@ -251,7 +251,7 @@ PostgreSQL documentation
|
||||
Use <xref linkend="app-droplang"> to remove a language.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
@ -27,12 +27,12 @@ PostgreSQL documentation
|
||||
<arg><replaceable>username</replaceable></arg>
|
||||
</cmdsynopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
<para>
|
||||
<application>createuser</application> creates a
|
||||
<application>createuser</application> creates a
|
||||
new <productname>PostgreSQL</productname> user (or more precisely, a role).
|
||||
Only superusers and users with <literal>CREATEROLE</> privilege can create
|
||||
new users, so <application>createuser</application> must be
|
||||
@ -74,7 +74,7 @@ PostgreSQL documentation
|
||||
<productname>PostgreSQL</productname> installation.
|
||||
</para>
|
||||
</listitem>
|
||||
</varlistentry>
|
||||
</varlistentry>
|
||||
|
||||
<varlistentry>
|
||||
<term><option>-c <replaceable class="parameter">number</replaceable></></term>
|
||||
@ -275,16 +275,16 @@ PostgreSQL documentation
|
||||
<para>
|
||||
<application>createuser</application> also accepts the following
|
||||
command-line arguments for connection parameters:
|
||||
|
||||
|
||||
<variablelist>
|
||||
<varlistentry>
|
||||
<term><option>-h <replaceable class="parameter">host</replaceable></></term>
|
||||
<term><option>--host <replaceable class="parameter">host</replaceable></></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Specifies the host name of the machine on which the
|
||||
Specifies the host name of the machine on which the
|
||||
server
|
||||
is running. If the value begins with a slash, it is used
|
||||
is running. If the value begins with a slash, it is used
|
||||
as the directory for the Unix domain socket.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -295,7 +295,7 @@ PostgreSQL documentation
|
||||
<term><option>--port <replaceable class="parameter">port</replaceable></></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Specifies the TCP port or local Unix domain socket file
|
||||
Specifies the TCP port or local Unix domain socket file
|
||||
extension on which the server
|
||||
is listening for connections.
|
||||
</para>
|
||||
|
@ -21,7 +21,7 @@
|
||||
DROP CAST [ IF EXISTS ] (<replaceable>source_type</replaceable> AS <replaceable>target_type</replaceable>) [ CASCADE | RESTRICT ]
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1 id="sql-dropcast-description">
|
||||
<title>Description</title>
|
||||
|
||||
@ -45,7 +45,7 @@ DROP CAST [ IF EXISTS ] (<replaceable>source_type</replaceable> AS <replaceable>
|
||||
<term><literal>IF EXISTS</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Do not throw an error if the cast does not exist. A notice is issued
|
||||
Do not throw an error if the cast does not exist. A notice is issued
|
||||
in this case.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -95,7 +95,7 @@ DROP CAST (text AS int);
|
||||
</programlisting>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1 id="sql-dropcast-compat">
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -21,7 +21,7 @@
|
||||
DROP CONVERSION [ IF EXISTS ] <replaceable>name</replaceable> [ CASCADE | RESTRICT ]
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1 id="sql-dropconversion-description">
|
||||
<title>Description</title>
|
||||
|
||||
@ -39,7 +39,7 @@ DROP CONVERSION [ IF EXISTS ] <replaceable>name</replaceable> [ CASCADE | RESTRI
|
||||
<term><literal>IF EXISTS</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Do not throw an error if the conversion does not exist.
|
||||
Do not throw an error if the conversion does not exist.
|
||||
A notice is issued in this case.
|
||||
</para>
|
||||
</listitem>
|
||||
|
@ -24,7 +24,7 @@ PostgreSQL documentation
|
||||
DROP DATABASE [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable>
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
@ -34,7 +34,7 @@ DROP DATABASE [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable>
|
||||
containing the data. It can only be executed by the database owner.
|
||||
Also, it cannot be executed while you or anyone else are connected
|
||||
to the target database. (Connect to <literal>postgres</literal> or any
|
||||
other database to issue this command.)
|
||||
other database to issue this command.)
|
||||
</para>
|
||||
|
||||
<para>
|
||||
@ -50,7 +50,7 @@ DROP DATABASE [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable>
|
||||
<term><literal>IF EXISTS</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Do not throw an error if the database does not exist. A notice is issued
|
||||
Do not throw an error if the database does not exist. A notice is issued
|
||||
in this case.
|
||||
</para>
|
||||
</listitem>
|
||||
|
@ -42,7 +42,7 @@ DROP DOMAIN [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> [, .
|
||||
<term><literal>IF EXISTS</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Do not throw an error if the domain does not exist. A notice is issued
|
||||
Do not throw an error if the domain does not exist. A notice is issued
|
||||
in this case.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -93,10 +93,10 @@ DROP DOMAIN box;
|
||||
|
||||
<refsect1 id="SQL-DROPDOMAIN-compatibility">
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
||||
<para>
|
||||
This command conforms to the SQL standard, except for the
|
||||
<literal>IF EXISTS</> option, which is a <productname>PostgreSQL</>
|
||||
<literal>IF EXISTS</> option, which is a <productname>PostgreSQL</>
|
||||
extension.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
@ -46,7 +46,7 @@ DROP FUNCTION [ IF EXISTS ] <replaceable class="parameter">name</replaceable> (
|
||||
<term><literal>IF EXISTS</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Do not throw an error if the function does not exist. A notice is issued
|
||||
Do not throw an error if the function does not exist. A notice is issued
|
||||
in this case.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -96,7 +96,7 @@ DROP FUNCTION [ IF EXISTS ] <replaceable class="parameter">name</replaceable> (
|
||||
|
||||
<listitem>
|
||||
<para>
|
||||
The data type(s) of the function's arguments (optionally
|
||||
The data type(s) of the function's arguments (optionally
|
||||
schema-qualified), if any.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -138,7 +138,7 @@ DROP FUNCTION sqrt(integer);
|
||||
|
||||
<refsect1 id="SQL-DROPFUNCTION-compatibility">
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
||||
<para>
|
||||
A <command>DROP FUNCTION</command> statement is defined in the SQL
|
||||
standard, but it is not compatible with this command.
|
||||
|
@ -43,7 +43,7 @@ DROP INDEX [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> [, ..
|
||||
<term><literal>IF EXISTS</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Do not throw an error if the index does not exist. A notice is issued
|
||||
Do not throw an error if the index does not exist. A notice is issued
|
||||
in this case.
|
||||
</para>
|
||||
</listitem>
|
||||
|
@ -34,7 +34,7 @@ DROP [ PROCEDURAL ] LANGUAGE [ IF EXISTS ] <replaceable class="PARAMETER">name</
|
||||
or the owner of the language to use <command>DROP LANGUAGE</>.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -44,7 +44,7 @@ DROP [ PROCEDURAL ] LANGUAGE [ IF EXISTS ] <replaceable class="PARAMETER">name</
|
||||
<term><literal>IF EXISTS</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Do not throw an error if the language does not exist. A notice is issued
|
||||
Do not throw an error if the language does not exist. A notice is issued
|
||||
in this case.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -81,7 +81,7 @@ DROP [ PROCEDURAL ] LANGUAGE [ IF EXISTS ] <replaceable class="PARAMETER">name</
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Examples</title>
|
||||
|
||||
@ -94,7 +94,7 @@ DROP LANGUAGE plsample;
|
||||
</programlisting>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -14,7 +14,7 @@ PostgreSQL documentation
|
||||
<refname>DROP OPERATOR CLASS</refname>
|
||||
<refpurpose>remove an operator class</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
|
||||
<indexterm zone="sql-dropopclass">
|
||||
<primary>DROP OPERATOR CLASS</primary>
|
||||
</indexterm>
|
||||
@ -40,7 +40,7 @@ DROP OPERATOR CLASS [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceab
|
||||
<literal>CASCADE</> for the drop to complete.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -50,7 +50,7 @@ DROP OPERATOR CLASS [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceab
|
||||
<term><literal>IF EXISTS</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Do not throw an error if the operator class does not exist. A notice is issued
|
||||
Do not throw an error if the operator class does not exist. A notice is issued
|
||||
in this case.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -94,7 +94,7 @@ DROP OPERATOR CLASS [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceab
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Notes</title>
|
||||
|
||||
@ -124,7 +124,7 @@ DROP OPERATOR CLASS widget_ops USING btree;
|
||||
such indexes along with the operator class.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -14,7 +14,7 @@ PostgreSQL documentation
|
||||
<refname>DROP OPERATOR</refname>
|
||||
<refpurpose>remove an operator</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
|
||||
<indexterm zone="sql-dropoperator">
|
||||
<primary>DROP OPERATOR</primary>
|
||||
</indexterm>
|
||||
@ -34,7 +34,7 @@ DROP OPERATOR [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> (
|
||||
of the operator.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -44,7 +44,7 @@ DROP OPERATOR [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> (
|
||||
<term><literal>IF EXISTS</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Do not throw an error if the operator does not exist. A notice is issued
|
||||
Do not throw an error if the operator does not exist. A notice is issued
|
||||
in this case.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -126,7 +126,7 @@ DROP OPERATOR ! (bigint, none);
|
||||
</programlisting>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -14,7 +14,7 @@ PostgreSQL documentation
|
||||
<refname>DROP OPERATOR FAMILY</refname>
|
||||
<refpurpose>remove an operator family</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
|
||||
<indexterm zone="sql-dropopfamily">
|
||||
<primary>DROP OPERATOR FAMILY</primary>
|
||||
</indexterm>
|
||||
@ -41,7 +41,7 @@ DROP OPERATOR FAMILY [ IF EXISTS ] <replaceable class="PARAMETER">name</replacea
|
||||
<literal>CASCADE</> for the drop to complete.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -111,7 +111,7 @@ DROP OPERATOR FAMILY float_ops USING btree;
|
||||
drop such indexes along with the operator family.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -61,7 +61,7 @@ DROP ROLE [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> [, ...
|
||||
<term><literal>IF EXISTS</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Do not throw an error if the role does not exist. A notice is issued
|
||||
Do not throw an error if the role does not exist. A notice is issued
|
||||
in this case.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -99,10 +99,10 @@ DROP ROLE jonathan;
|
||||
</programlisting>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
||||
<para>
|
||||
The SQL standard defines <command>DROP ROLE</command>, but it allows
|
||||
only one role to be dropped at a time, and it specifies different
|
||||
|
@ -42,7 +42,7 @@ DROP RULE [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> ON <re
|
||||
<term><literal>IF EXISTS</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Do not throw an error if the rule does not exist. A notice is issued
|
||||
Do not throw an error if the rule does not exist. A notice is issued
|
||||
in this case.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -99,7 +99,7 @@ DROP RULE newrule ON mytable;
|
||||
</programlisting>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -38,7 +38,7 @@ DROP SCHEMA [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> [, .
|
||||
even if he does not own some of the objects within the schema.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -47,7 +47,7 @@ DROP SCHEMA [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> [, .
|
||||
<term><literal>IF EXISTS</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Do not throw an error if the schema does not exist. A notice is issued
|
||||
Do not throw an error if the schema does not exist. A notice is issued
|
||||
in this case.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -96,15 +96,15 @@ DROP SCHEMA mystuff CASCADE;
|
||||
</programlisting>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
||||
<para>
|
||||
<command>DROP SCHEMA</command> is fully conforming with the SQL
|
||||
standard, except that the standard only allows one schema to be
|
||||
dropped per command, and apart from the
|
||||
<literal>IF EXISTS</> option, which is a <productname>PostgreSQL</>
|
||||
dropped per command, and apart from the
|
||||
<literal>IF EXISTS</> option, which is a <productname>PostgreSQL</>
|
||||
extension.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
@ -33,7 +33,7 @@ DROP SEQUENCE [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> [,
|
||||
generators. A sequence can only be dropped by its owner or a superuser.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -42,7 +42,7 @@ DROP SEQUENCE [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> [,
|
||||
<term><literal>IF EXISTS</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Do not throw an error if the sequence does not exist. A notice is issued
|
||||
Do not throw an error if the sequence does not exist. A notice is issued
|
||||
in this case.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -89,16 +89,16 @@ DROP SEQUENCE serial;
|
||||
</programlisting>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
<para>
|
||||
<command>DROP SEQUENCE</command> conforms to the <acronym>SQL</acronym>
|
||||
standard, except that the standard only allows one
|
||||
sequence to be dropped per command, and apart from the
|
||||
<literal>IF EXISTS</> option, which is a <productname>PostgreSQL</>
|
||||
extension.
|
||||
sequence to be dropped per command, and apart from the
|
||||
<literal>IF EXISTS</> option, which is a <productname>PostgreSQL</>
|
||||
extension.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
@ -24,7 +24,7 @@ PostgreSQL documentation
|
||||
DROP TABLE [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> [, ...] [ CASCADE | RESTRICT ]
|
||||
</synopsis>
|
||||
</refsynopsisdiv>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Description</title>
|
||||
|
||||
@ -45,7 +45,7 @@ DROP TABLE [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> [, ..
|
||||
constraint, not the other table entirely.)
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -54,7 +54,7 @@ DROP TABLE [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> [, ..
|
||||
<term><literal>IF EXISTS</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Do not throw an error if the table does not exist. A notice is issued
|
||||
Do not throw an error if the table does not exist. A notice is issued
|
||||
in this case.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -95,7 +95,7 @@ DROP TABLE [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> [, ..
|
||||
<title>Examples</title>
|
||||
|
||||
<para>
|
||||
To destroy two tables, <literal>films</literal> and
|
||||
To destroy two tables, <literal>films</literal> and
|
||||
<literal>distributors</literal>:
|
||||
|
||||
<programlisting>
|
||||
@ -103,14 +103,14 @@ DROP TABLE films, distributors;
|
||||
</programlisting>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
<para>
|
||||
This command conforms to the SQL standard, except that the standard only
|
||||
allows one table to be dropped per command, and apart from the
|
||||
<literal>IF EXISTS</> option, which is a <productname>PostgreSQL</>
|
||||
allows one table to be dropped per command, and apart from the
|
||||
<literal>IF EXISTS</> option, which is a <productname>PostgreSQL</>
|
||||
extension.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
@ -53,7 +53,7 @@ DROP TABLESPACE [ IF EXISTS ] <replaceable class="PARAMETER">tablespace_name</re
|
||||
<term><literal>IF EXISTS</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Do not throw an error if the tablespace does not exist. A notice is issued
|
||||
Do not throw an error if the tablespace does not exist. A notice is issued
|
||||
in this case.
|
||||
</para>
|
||||
</listitem>
|
||||
|
@ -12,8 +12,8 @@ PostgreSQL documentation
|
||||
|
||||
<refnamediv>
|
||||
<refname>DROP TRIGGER</refname>
|
||||
<refpurpose>remove a trigger</refpurpose>
|
||||
</refnamediv>
|
||||
<refpurpose>remove a trigger</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
<indexterm zone="sql-droptrigger">
|
||||
<primary>DROP TRIGGER</primary>
|
||||
@ -44,7 +44,7 @@ DROP TRIGGER [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> ON
|
||||
<term><literal>IF EXISTS</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Do not throw an error if the trigger does not exist. A notice is issued
|
||||
Do not throw an error if the trigger does not exist. A notice is issued
|
||||
in this case.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -102,10 +102,10 @@ DROP TRIGGER if_dist_exists ON films;
|
||||
</programlisting>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1 id="SQL-DROPTRIGGER-compatibility">
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
||||
<para>
|
||||
The <command>DROP TRIGGER</command> statement in
|
||||
<productname>PostgreSQL</productname> is incompatible with the SQL
|
||||
|
@ -14,7 +14,7 @@ PostgreSQL documentation
|
||||
<refname>DROP TEXT SEARCH CONFIGURATION</refname>
|
||||
<refpurpose>remove a text search configuration</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
|
||||
<indexterm zone="sql-droptsconfig">
|
||||
<primary>DROP TEXT SEARCH CONFIGURATION</primary>
|
||||
</indexterm>
|
||||
@ -34,7 +34,7 @@ DROP TEXT SEARCH CONFIGURATION [ IF EXISTS ] <replaceable class="PARAMETER">name
|
||||
configuration.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -97,7 +97,7 @@ DROP TEXT SEARCH CONFIGURATION my_english;
|
||||
drop such indexes along with the text search configuration.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -14,7 +14,7 @@ PostgreSQL documentation
|
||||
<refname>DROP TEXT SEARCH DICTIONARY</refname>
|
||||
<refpurpose>remove a text search dictionary</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
|
||||
<indexterm zone="sql-droptsdictionary">
|
||||
<primary>DROP TEXT SEARCH DICTIONARY</primary>
|
||||
</indexterm>
|
||||
@ -34,7 +34,7 @@ DROP TEXT SEARCH DICTIONARY [ IF EXISTS ] <replaceable class="PARAMETER">name</r
|
||||
dictionary.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -96,7 +96,7 @@ DROP TEXT SEARCH DICTIONARY english;
|
||||
drop such configurations along with the dictionary.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -14,7 +14,7 @@ PostgreSQL documentation
|
||||
<refname>DROP TEXT SEARCH PARSER</refname>
|
||||
<refpurpose>remove a text search parser</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
|
||||
<indexterm zone="sql-droptsparser">
|
||||
<primary>DROP TEXT SEARCH PARSER</primary>
|
||||
</indexterm>
|
||||
@ -33,7 +33,7 @@ DROP TEXT SEARCH PARSER [ IF EXISTS ] <replaceable class="PARAMETER">name</repla
|
||||
parser. You must be a superuser to use this command.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -94,7 +94,7 @@ DROP TEXT SEARCH PARSER my_parser;
|
||||
drop such configurations along with the parser.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -14,7 +14,7 @@ PostgreSQL documentation
|
||||
<refname>DROP TEXT SEARCH TEMPLATE</refname>
|
||||
<refpurpose>remove a text search template</refpurpose>
|
||||
</refnamediv>
|
||||
|
||||
|
||||
<indexterm zone="sql-droptstemplate">
|
||||
<primary>DROP TEXT SEARCH TEMPLATE</primary>
|
||||
</indexterm>
|
||||
@ -33,7 +33,7 @@ DROP TEXT SEARCH TEMPLATE [ IF EXISTS ] <replaceable class="PARAMETER">name</rep
|
||||
template. You must be a superuser to use this command.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -95,7 +95,7 @@ DROP TEXT SEARCH TEMPLATE thesaurus;
|
||||
drop such dictionaries along with the template.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
|
@ -33,7 +33,7 @@ DROP TYPE [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> [, ...
|
||||
Only the owner of a type can remove it.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -42,7 +42,7 @@ DROP TYPE [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> [, ...
|
||||
<term><literal>IF EXISTS</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Do not throw an error if the type does not exist. A notice is issued
|
||||
Do not throw an error if the type does not exist. A notice is issued
|
||||
in this case.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -78,7 +78,7 @@ DROP TYPE [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> [, ...
|
||||
</varlistentry>
|
||||
</variablelist>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1 id="SQL-DROPTYPE-examples">
|
||||
<title>Examples</title>
|
||||
|
||||
|
@ -33,7 +33,7 @@ DROP VIEW [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> [, ...
|
||||
this command you must be the owner of the view.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Parameters</title>
|
||||
|
||||
@ -42,7 +42,7 @@ DROP VIEW [ IF EXISTS ] <replaceable class="PARAMETER">name</replaceable> [, ...
|
||||
<term><literal>IF EXISTS</literal></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Do not throw an error if the view does not exist. A notice is issued
|
||||
Do not throw an error if the view does not exist. A notice is issued
|
||||
in this case.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -89,15 +89,15 @@ DROP VIEW kinds;
|
||||
</programlisting>
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
||||
<refsect1>
|
||||
<title>Compatibility</title>
|
||||
|
||||
<para>
|
||||
This command conforms to the SQL standard, except that the standard only
|
||||
allows one view to be dropped per command, and apart from the
|
||||
<literal>IF EXISTS</> option, which is a <productname>PostgreSQL</>
|
||||
extension.
|
||||
allows one view to be dropped per command, and apart from the
|
||||
<literal>IF EXISTS</> option, which is a <productname>PostgreSQL</>
|
||||
extension.
|
||||
</para>
|
||||
</refsect1>
|
||||
|
||||
|
@ -121,9 +121,9 @@ PostgreSQL documentation
|
||||
<term><option>--host <replaceable class="parameter">host</replaceable></></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Specifies the host name of the machine on which the
|
||||
Specifies the host name of the machine on which the
|
||||
server
|
||||
is running. If the value begins with a slash, it is used
|
||||
is running. If the value begins with a slash, it is used
|
||||
as the directory for the Unix domain socket.
|
||||
</para>
|
||||
</listitem>
|
||||
@ -134,7 +134,7 @@ PostgreSQL documentation
|
||||
<term><option>--port <replaceable class="parameter">port</replaceable></></term>
|
||||
<listitem>
|
||||
<para>
|
||||
Specifies the TCP port or local Unix domain socket file
|
||||
Specifies the TCP port or local Unix domain socket file
|
||||
extension on which the server
|
||||
is listening for connections.
|
||||
</para>
|
||||
@ -172,7 +172,7 @@ PostgreSQL documentation
|
||||
<listitem>
|
||||
<para>
|
||||
Force <application>dropdb</application> to prompt for a
|
||||
password before connecting to a database.
|
||||
password before connecting to a database.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user