Commit 2475e874 authored by Thomas G. Lockhart's avatar Thomas G. Lockhart

Deprecate 'current' for date/time input.

Fix up references to "PostgreSQL" rather than "Postgres". Was roughly
 evenly split between the two before. ref/ files not yet done.
parent eec9511f
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/advanced.sgml,v 1.24 2001/11/19 23:17:38 tgl Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/advanced.sgml,v 1.25 2001/11/21 05:53:40 thomas Exp $
-->
<chapter id="tutorial-advanced">
......@@ -215,7 +215,7 @@ UPDATE branches SET balance = balance + 100.00
</para>
<para>
In <productname>Postgres</>, a transaction is set up by surrounding
In <productname>PostgreSQL</>, a transaction is set up by surrounding
the SQL commands of the transaction with
<command>BEGIN</> and <command>COMMIT</> commands. So our banking
transaction would actually look like
......@@ -233,7 +233,7 @@ COMMIT;
</para>
<para>
<productname>Postgres</> actually treats every SQL statement as being
<productname>PostgreSQL</> actually treats every SQL statement as being
executed within a transaction. If you don't issue a <command>BEGIN</>
command,
then each individual statement has an implicit <command>BEGIN</> and
......@@ -316,7 +316,7 @@ CREATE TABLE capitals (
<structfield>population</>, and <structfield>altitude</>) from its
<firstterm>parent</firstterm>, <classname>cities</classname>. The
type of the column <structfield>name</structfield> is
<type>text</type>, a native <productname>Postgres</productname>
<type>text</type>, a native <productname>PostgreSQL</productname>
type for variable length character strings. State capitals have
an extra column, state, that shows their state. In
<productname>PostgreSQL</productname>, a table can inherit from
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/arch-dev.sgml,v 2.15 2001/11/08 23:34:33 petere Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/arch-dev.sgml,v 2.16 2001/11/21 05:53:40 thomas Exp $
-->
<chapter id="overview">
......@@ -17,11 +17,11 @@ $Header: /cvsroot/pgsql/doc/src/sgml/arch-dev.sgml,v 2.15 2001/11/08 23:34:33 pe
<para>
This chapter gives an overview of the internal structure of the
backend of <productname>Postgres</productname>.
backend of <productname>PostgreSQL</productname>.
After having read the following sections you
should have an idea of how a query is processed. Don't expect a
detailed description here (I think such a description dealing with
all data structures and functions used within <productname>Postgres</productname>
all data structures and functions used within <productname>PostgreSQL</productname>
would exceed 1000
pages!). This chapter is intended to help understanding the general
control and data flow within the backend from receiving a query to
......@@ -39,7 +39,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/arch-dev.sgml,v 2.15 2001/11/08 23:34:33 pe
<procedure>
<step>
<para>
A connection from an application program to the <productname>Postgres</productname>
A connection from an application program to the <productname>PostgreSQL</productname>
server has to be established. The application program transmits a
query to the server and receives the results sent back by the server.
</para>
......@@ -109,7 +109,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/arch-dev.sgml,v 2.15 2001/11/08 23:34:33 pe
<para>
In the following sections we will cover every of the above listed items
in more detail to give a better understanding on <productname>Postgres</productname>'s internal
in more detail to give a better understanding on <productname>PostgreSQL</productname>'s internal
control and data structures.
</para>
</sect1>
......@@ -118,7 +118,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/arch-dev.sgml,v 2.15 2001/11/08 23:34:33 pe
<title>How Connections are Established</title>
<para>
<productname>Postgres</productname> is implemented using a simple "process per-user"
<productname>PostgreSQL</productname> is implemented using a simple "process per-user"
client/server model. In this model there is one <firstterm>client process</firstterm>
connected to exactly one <firstterm>server process</firstterm>.
As we don't know <foreignphrase>per se</foreignphrase>
......@@ -142,7 +142,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/arch-dev.sgml,v 2.15 2001/11/08 23:34:33 pe
interactive SQL queries) or any user application implemented using
the <filename>libpg</filename> library. Note that applications implemented using
<application>ecpg</application>
(the <productname>Postgres</productname> embedded SQL preprocessor for C)
(the <productname>PostgreSQL</productname> embedded SQL preprocessor for C)
also use this library.
</para>
......@@ -236,7 +236,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/arch-dev.sgml,v 2.15 2001/11/08 23:34:33 pe
<para>
The mentioned transformations and compilations are normally done
automatically using the <firstterm>makefiles</firstterm>
shipped with the <productname>Postgres</productname>
shipped with the <productname>PostgreSQL</productname>
source distribution.
</para>
</note>
......@@ -255,7 +255,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/arch-dev.sgml,v 2.15 2001/11/08 23:34:33 pe
<para>
For a better understanding of the data structures used in
<productname>Postgres</productname>
<productname>PostgreSQL</productname>
for the processing of a query we use an example to illustrate the
changes made to these data structures in every stage.
This example contains the following simple query that will be used in
......@@ -443,13 +443,13 @@ current context are performed.
</sect1>
<sect1 id="rule-system">
<title>The <productname>Postgres</productname> Rule System</title>
<title>The <productname>PostgreSQL</productname> Rule System</title>
<para>
<productname>Postgres</productname> supports a powerful
<productname>PostgreSQL</productname> supports a powerful
<firstterm>rule system</firstterm> for the specification
of <firstterm>views</firstterm> and ambiguous <firstterm>view updates</firstterm>.
Originally the <productname>Postgres</productname>
Originally the <productname>PostgreSQL</productname>
rule system consisted of two implementations:
<itemizedlist>
......@@ -459,7 +459,7 @@ current context are performed.
implemented deep in the <firstterm>executor</firstterm>. The rule system was
called whenever an individual tuple had been accessed. This
implementation was removed in 1995 when the last official release
of the <productname>Postgres</productname> project was transformed into
of the <productname>PostgreSQL</productname> project was transformed into
<productname>Postgres95</productname>.
</para>
</listitem>
......@@ -478,7 +478,7 @@ current context are performed.
<para>
For information on the syntax and creation of rules in the
<productname>Postgres</productname> system refer to
<productname>PostgreSQL</productname> system refer to
<citetitle>The PostgreSQL User's Guide</citetitle>.
</para>
......@@ -700,7 +700,7 @@ current context are performed.
Another task performed by the planner/optimizer is fixing the
<firstterm>operator ids</firstterm> in the <literal>Expr</literal>
and <literal>Oper</literal> nodes. As
mentioned earlier, <productname>Postgres</productname> supports a variety of different data
mentioned earlier, <productname>PostgreSQL</productname> supports a variety of different data
types and even user defined types can be used. To be able to maintain
the huge amount of functions and operators it is necessary to store
them in a system table. Each function and operator gets a unique
......@@ -1181,7 +1181,7 @@ transformInsertStmt()} above have been added here as well.
\subsubsection{The Rewrite System}
This section describes the changes to the {\it rewrite system} of
<productname>Postgres</productname> that have been necessary to support the use of {\it views}
<productname>PostgreSQL</productname> that have been necessary to support the use of {\it views}
within queries using a {\it having clause} and to support the
definition of {\it views} by queries using a {\it having clause}.
......@@ -1395,7 +1395,7 @@ items. Note that it is not necessary to understand the meaning of
every single source line here and therefore we will not discuss
detailed questions like "Why has the variable {\tt varno} to be
increased by 3?". Questions like that belong to a chapter dealing
with the implementation of {\it views} in <productname>Postgres</productname> and to be able to
with the implementation of {\it views} in <productname>PostgreSQL</productname> and to be able to
answer them it would be necessary to know all the functions and not
only those described here. The fact important for us is to make sure,
that whatever is applied to the {\it targetlist} and the data
......@@ -1538,7 +1538,7 @@ examined.
%
<step> {\tt QueryRewrite()} \\
This function takes the {\it parsetree} of a query and rewrites it
using <productname>Postgres</productname>'s {\it rewrite system}. Before the query itself can be
using <productname>PostgreSQL</productname>'s {\it rewrite system}. Before the query itself can be
rewritten, subqueries that are possibly part of the query have to be
processed. Therefore the function {\tt QueryRewriteSubLink()} is
called for the {\it where clause} and for the {\it having clause}.
......@@ -2750,7 +2750,7 @@ produced by the {\it parser stage} that can be executed by the {\it
executor}. In most cases there are several ways (paths) with different
cost to get to the same result. It's the {\it planner/optimizer's}
task to find out which path is the cheapest and to create a {\it plan}
using this path. The implementation of {\it unions} in <productname>Postgres</productname> is
using this path. The implementation of {\it unions} in <productname>PostgreSQL</productname> is
based on the following idea: \\
\\
The set derived by evaluating $A \cup B$ must contain every member of
......@@ -2786,7 +2786,7 @@ and the sort is just performed to make its work easier.
\subsection{How Intersect, Except and Union Work Together}
The last section showed that every stage ({\it parser stage}, {\it
planner/optimizer}, {\it executor}) of <productname>Postgres</productname> has to provide
planner/optimizer}, {\it executor}) of <productname>PostgreSQL</productname> has to provide
features in order to support {\it union} statements. For the
implementation of {\it intersect} and {\it except} statements (and
statements involving all {\it set operators}) we choose a different approach
......@@ -3039,7 +3039,7 @@ file {\tt $\ldots$/src/backend/parser/keywords.c}:
};
\end{verbatim}
%
<step> <productname>Postgres</productname> contains functions to convert the internal
<step> <productname>PostgreSQL</productname> contains functions to convert the internal
representation of a {\it parsetree} or {\it plantree} into an ASCII
representation (that can easily be printed to the screen (for
debugging purposes) or be stored in a file) and vice versa. These
......@@ -3629,7 +3629,7 @@ troubles in the {\it transforming logic}.
\end{figure}
%
<step> Transform the new {\it operator tree} into DNF (disjunctive normal
form). <productname>Postgres</productname> does not provide any function for the transformation
form). <productname>PostgreSQL</productname> does not provide any function for the transformation
into DNF but it provides a function {\tt cnfify()} that performs a
transformation into CNF (conjunctive normal form). So we can easily
make use of this function when we exchange every {\tt OR} with an {\tt
......
......@@ -2,15 +2,15 @@
<TITLE>Architecture</TITLE>
<Sect1 id="arch-pg-concepts">
<Title><ProductName>Postgres</ProductName> Architectural Concepts</Title>
<Title><ProductName>PostgreSQL</ProductName> Architectural Concepts</Title>
<Para>
Before we begin, you should understand the basic
<ProductName>Postgres</ProductName> system architecture. Understanding how the
parts of <ProductName>Postgres</ProductName> interact will make the next chapter
<ProductName>PostgreSQL</ProductName> system architecture. Understanding how the
parts of <ProductName>PostgreSQL</ProductName> interact will make the next chapter
somewhat clearer.
In database jargon, <ProductName>Postgres</ProductName> uses a simple "process
per-user" client/server model. A <ProductName>Postgres</ProductName> session
In database jargon, <ProductName>PostgreSQL</ProductName> uses a simple "process
per-user" client/server model. A <ProductName>PostgreSQL</ProductName> session
consists of the following cooperating Unix processes (programs):
<ItemizedList>
......@@ -80,15 +80,15 @@ From that point on, the frontend process and the backend
</Para>
<Para>
You should also be aware that the <Application>postmaster</Application> and
postgres servers run with the user-id of the <ProductName>Postgres</ProductName>
You should also be aware that the <Application>postmaster</Application> and
postgres servers run with the user-id of the <ProductName>PostgreSQL</ProductName>
<quote>superuser</>.
Note that the <ProductName>Postgres</ProductName> superuser does not
Note that the <ProductName>PostgreSQL</ProductName> superuser does not
have to be any particular user (e.g., a user named
<literal>postgres</literal>), although many systems are installed that way.
Furthermore, the <ProductName>Postgres</ProductName> superuser should
Furthermore, the <ProductName>PostgreSQL</ProductName> superuser should
definitely not be the Unix superuser, <literal>root</literal>!
It is safest if the <ProductName>Postgres</ProductName> superuser is an
It is safest if the <ProductName>PostgreSQL</ProductName> superuser is an
ordinary, unprivileged user so far as the surrounding Unix system is
concerned.
In any case, all files relating to a database should belong to
......@@ -96,3 +96,21 @@ concerned.
</Para>
</sect1>
</Chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode:sgml
sgml-omittag:nil
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-tabs-mode:nil
sgml-indent-data:t
sgml-parent-document:nil
sgml-default-dtd-file:"./reference.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:("/usr/share/sgml/catalog")
sgml-local-ecat-files:nil
End:
-->
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/array.sgml,v 1.15 2001/11/19 09:05:00 tgl Exp $ -->
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/array.sgml,v 1.16 2001/11/21 05:53:40 thomas Exp $ -->
<chapter id="arrays">
<title>Arrays</title>
......@@ -8,7 +8,7 @@
</indexterm>
<para>
<productname>Postgres</productname> allows columns of a table to be
<productname>PostgreSQL</productname> allows columns of a table to be
defined as variable-length multidimensional arrays. Arrays of any
built-in type or user-defined type can be created. To illustrate
their use, we create this table:
......@@ -66,7 +66,7 @@ SELECT name FROM sal_emp WHERE pay_by_quarter[1] &lt;&gt; pay_by_quarter[2];
</programlisting>
The array subscript numbers are written within square brackets.
<productname>Postgres</productname> uses the
<productname>PostgreSQL</productname> uses the
<quote>one-based</quote> numbering convention for arrays, that is,
an array of n elements starts with <literal>array[1]</literal> and
ends with <literal>array[n]</literal>.
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/backup.sgml,v 2.20 2001/11/18 22:27:00 tgl Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/backup.sgml,v 2.21 2001/11/21 05:53:40 thomas Exp $
-->
<chapter id="backup">
<title>Backup and Restore</title>
......@@ -7,7 +7,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/backup.sgml,v 2.20 2001/11/18 22:27:00 tgl
<indexterm zone="backup"><primary>backup</></>
<para>
As everything that contains valuable data, <productname>Postgres</>
As everything that contains valuable data, <productname>PostgreSQL</>
databases should be backed up regularly. While the procedure is
essentially simple, it is important to have a basic understanding of
the underlying techniques and assumptions.
......@@ -15,7 +15,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/backup.sgml,v 2.20 2001/11/18 22:27:00 tgl
<para>
There are two fundamentally different approaches to backing up
<productname>Postgres</> data:
<productname>PostgreSQL</> data:
<itemizedlist>
<listitem><para><acronym>SQL</> dump</para></listitem>
<listitem><para>File system level backup</para></listitem>
......@@ -29,7 +29,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/backup.sgml,v 2.20 2001/11/18 22:27:00 tgl
The idea behind this method is to generate a text file with SQL
commands that, when fed back to the server, will recreate the
database in the same state as it was at the time of the dump.
<productname>Postgres</> provides the utility program
<productname>PostgreSQL</> provides the utility program
<application>pg_dump</> for this purpose. The basic usage of this
command is:
<synopsis>
......@@ -40,7 +40,7 @@ pg_dump <replaceable class="parameter">dbname</replaceable> &gt; <replaceable cl
</para>
<para>
<application>pg_dump</> is a regular <productname>Postgres</>
<application>pg_dump</> is a regular <productname>PostgreSQL</>
client application (albeit a particularly clever one). This means
that you can do this backup procedure from any remote host that has
access to the database. But remember that <application>pg_dump</>
......@@ -62,7 +62,7 @@ pg_dump <replaceable class="parameter">dbname</replaceable> &gt; <replaceable cl
</para>
<para>
As any other <productname>Postgres</> client application,
As any other <productname>PostgreSQL</> client application,
<application>pg_dump</> will by default connect with the database
user name that is equal to the current Unix user name. To override
this, either specify the <option>-U</option> option or set the
......@@ -182,7 +182,7 @@ pg_dumpall &gt; <replaceable>outfile</>
</note>
<para>
Since <productname>Postgres</productname> allows tables larger
Since <productname>PostgreSQL</productname> allows tables larger
than the maximum file size on your system, it can be problematic
to dump the table to a file, since the resulting file will likely
be larger than the maximum size allowed by your system. As
......@@ -242,7 +242,7 @@ cat <replaceable class="parameter">filename</replaceable>* | psql <replaceable c
<formalpara>
<title>Use the custom dump format.</title>
<para>
If PostgreSQL was built on a system with the <application>zlib</> compression library
If <productname>PostgreSQL</productname> was built on a system with the <application>zlib</> compression library
installed, the custom dump format will compress data as it writes it
to the output file. For large databases, this will produce similar dump
sizes to using <command>gzip</command>, but has the added advantage that the tables can be
......@@ -287,7 +287,7 @@ pg_dump -Fc <replaceable class="parameter">dbname</replaceable> > <replaceable c
either the custom or the TAR output format, and use the -b option in
<application>pg_dump</>. See the reference pages for details.
The directory <filename>contrib/pg_dumplo</> of the
<productname>Postgres</> source tree also contains a program that can
<productname>PostgreSQL</> source tree also contains a program that can
dump large objects.
</para>
......@@ -303,7 +303,7 @@ pg_dump -Fc <replaceable class="parameter">dbname</replaceable> > <replaceable c
<para>
An alternative backup strategy is to directly copy the files that
<productname>Postgres</> uses to store the data in the database. In
<productname>PostgreSQL</> uses to store the data in the database. In
<xref linkend="creating-cluster"> it is explained where these files
are located, but you have probably found them already if you are
interested in this method. You can use whatever method you prefer
......@@ -373,7 +373,7 @@ tar -cf backup.tar /usr/local/pgsql/data
<para>
As a general rule, the internal data storage format is subject to
change between releases of <productname>Postgres</>. This does not
change between releases of <productname>PostgreSQL</>. This does not
apply to different <quote>patch levels</quote>, these always have
compatible storage formats. For example, releases 7.0.1, 7.1.2, and
7.2 are not compatible, whereas &version;.1 and &version;.2 are. When you
......@@ -440,3 +440,21 @@ psql < backup
</note>
</sect1>
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode:sgml
sgml-omittag:nil
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-tabs-mode:nil
sgml-indent-data:t
sgml-parent-document:nil
sgml-default-dtd-file:"./reference.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:("/usr/share/sgml/catalog")
sgml-local-ecat-files:nil
End:
-->
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/biblio.sgml,v 1.15 2001/11/08 23:34:33 petere Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/biblio.sgml,v 1.16 2001/11/21 05:53:40 thomas Exp $
-->
<bibliography id="biblio">
......@@ -7,7 +7,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/biblio.sgml,v 1.15 2001/11/08 23:34:33 pete
<para>
Selected references and readings for <acronym>SQL</acronym>
and <productname>Postgres</productname>.
and <productname>PostgreSQL</productname>.
</para>
<para>
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/bki.sgml,v 1.7 2001/06/12 05:55:48 tgl Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/bki.sgml,v 1.8 2001/11/21 05:53:40 thomas Exp $
-->
<chapter id="bki">
......@@ -8,7 +8,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/bki.sgml,v 1.7 2001/06/12 05:55:48 tgl Exp
<para>
Backend Interface (<acronym>BKI</acronym>) files are scripts in a
special language that are input to the
<productname>Postgres</productname> backend running in the special
<productname>PostgreSQL</productname> backend running in the special
<quote>bootstrap</quote> mode that allows it to perform database
functions without a database system already existing.
<acronym>BKI</acronym> files can therefore be used to create the
......@@ -20,7 +20,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/bki.sgml,v 1.7 2001/06/12 05:55:48 tgl Exp
<application>initdb</application> uses a <acronym>BKI</acronym> file
to do part of its job when creating a new database cluster. The
input file used by <application>initdb</application> is created as
part of building and installing <productname>Postgres</productname>
part of building and installing <productname>PostgreSQL</productname>
by a program named <filename>genbki.sh</filename> from some
specially formatted C header files in the source tree. The created
BKI file is called <filename>postgres.bki</filename> and is
......@@ -37,7 +37,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/bki.sgml,v 1.7 2001/06/12 05:55:48 tgl Exp
<title><acronym>BKI</acronym> File Format</title>
<para>
This section describes how the <productname>Postgres</productname>
This section describes how the <productname>PostgreSQL</productname>
backend interprets <acronym>BKI</acronym> files. This description
will be easier to understand if the <filename>postgres.bki</filename>
file is at hand as an example. You should also study the source
......
<!--
Documentation of the system catalogs, directed toward PostgreSQL developers
$Header: /cvsroot/pgsql/doc/src/sgml/catalogs.sgml,v 2.28 2001/11/08 23:44:01 petere Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/catalogs.sgml,v 2.29 2001/11/21 05:53:40 thomas Exp $
-->
<chapter id="catalogs">
......@@ -2300,7 +2300,8 @@
routines pass a value of this type by value or by reference.
Only <type>char</type>, <type>short</type>, and
<type>int</type> equivalent items can be passed by value, so if
the type is not 1, 2, or 4 bytes long, Postgres does not have
the type is not 1, 2, or 4 bytes long,
<productname>PostgreSQL</> does not have
the option of passing by value and so
<structfield>typbyval</structfield> had better be false.
Variable-length types are always passed by reference. Note that
......@@ -2415,7 +2416,8 @@
<structfield>typalign</structfield> is the alignment required
when storing a value of this type. It applies to storage on
disk as well as most representations of the value inside
Postgres. When multiple values are stored consecutively, such
<productname>PostgreSQL</>.
When multiple values are stored consecutively, such
as in the representation of a complete row on disk, padding is
inserted before a datum of this type so that it begins on the
specified boundary. The alignment reference is the beginning
......@@ -2493,7 +2495,23 @@
</tbody>
</tgroup>
</table>
</sect1>
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode:sgml
sgml-omittag:nil
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-tabs-mode:nil
sgml-indent-data:t
sgml-parent-document:nil
sgml-default-dtd-file:"./reference.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:("/usr/share/sgml/catalog")
sgml-local-ecat-files:nil
End:
-->
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/charset.sgml,v 2.17 2001/11/19 03:58:24 tgl Exp $ -->
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/charset.sgml,v 2.18 2001/11/21 05:53:40 thomas Exp $ -->
<chapter id="charset">
<title>Localization</>
......@@ -11,7 +11,7 @@
</abstract>
<para>
<productname>Postgres</productname> supports localization with
<productname>PostgreSQL</productname> supports localization with
three approaches:
<itemizedlist>
......@@ -26,7 +26,7 @@
<listitem>
<para>
Using explicit multiple-byte character sets defined in the
<productname>Postgres</productname> server to support languages
<productname>PostgreSQL</productname> server to support languages
that require more characters than will fit into a single byte,
and to provide character set recoding between client and server.
The number of supported character sets is fixed at the time the
......@@ -174,7 +174,7 @@ export LANG=sv_SE
The <envar>LC_COLLATE</> and <envar>LC_CTYPE</> variables affect the
sort order of indexes. Therefore, these values must be kept fixed
for any particular database cluster, or indexes on text columns will
become corrupt. <productname>Postgres</productname> enforces this
become corrupt. <productname>PostgreSQL</productname> enforces this
by recording the values of <envar>LC_COLLATE</> and <envar>LC_CTYPE</>
that are seen by <application>initdb</>. The server automatically adopts
those two values when it is started; only the other <envar>LC_</>
......@@ -316,13 +316,13 @@ perl: warning: Falling back to the standard locale ("C").
<para>
Multibyte (<acronym>MB</acronym>) support is intended to allow
<productname>Postgres</productname> to handle
<productname>PostgreSQL</productname> to handle
multiple-byte character sets such as <acronym>EUC</> (Extended Unix Code), Unicode and
Mule internal code. With <acronym>MB</acronym> enabled you can use multibyte
character sets in regular expressions (regexp), LIKE, and some
other functions. The default
encoding system is selected while initializing your
<productname>Postgres</productname> installation using
<productname>PostgreSQL</productname> installation using
<application>initdb</application>. Note that this can be
overridden when you create a database using
<application>createdb</application> or by using the SQL command
......@@ -471,14 +471,15 @@ perl: warning: Falling back to the standard locale ("C").
</para>
<para>
CAUTION2: Not all API supports encodings listed above. For example,
PostgreSQL JDBC driver does not support MULE_INTERNAL, LATIN6,
LATIN8 and LATIN10.
CAUTION2: Not all API supports encodings listed above. For example,
<productname>PostgreSQL</>
JDBC driver does not support MULE_INTERNAL, LATIN6,
LATIN8 and LATIN10.
</para>
<para>
Here is an example of configuring
<productname>Postgres</productname> to use a Japanese encoding by
<productname>PostgreSQL</productname> to use a Japanese encoding by
default:
<programlisting>
......@@ -497,7 +498,7 @@ perl: warning: Falling back to the standard locale ("C").
<para>
<application>initdb</application> defines the default encoding
for a <productname>Postgres</productname> installation. For example:
for a <productname>PostgreSQL</productname> installation. For example:
<programlisting>
% initdb -E EUC_JP
......@@ -554,7 +555,7 @@ $ psql -l
frontend</title>
<para>
<productname>Postgres</productname> supports an automatic
<productname>PostgreSQL</productname> supports an automatic
encoding translation between backend
and frontend for some encodings.
......@@ -727,7 +728,7 @@ $ psql -l
<para>
To enable the automatic encoding translation, you have to tell
<productname>Postgres</productname> the encoding you would like
<productname>PostgreSQL</productname> the encoding you would like
to use in frontend. There are
several ways to accomplish this.
......@@ -827,8 +828,8 @@ RESET CLIENT_ENCODING;
<para>
An automatic encoding translation between Unicode and other
encodings has been supported since PostgreSQL 7.1.
For 7.1 it's not enabled by default.
encodings has been supported since <productname>PostgreSQL</> 7.1.
For 7.1 it was not enabled by default.
To enable this feature, run configure with the
<option>--enable-unicode-conversion</option> option. Note that this requires
the <option>--enable-multibyte</option> option also.
......@@ -972,7 +973,7 @@ April 21, 1998 some enhancements/fixes
* fix problem in regress/regress.sh in case of System V
* fix toupper(), tolower() to handle 8bit chars
Mar 25, 1998 MB PL2 is incorporated into PostgreSQL 6.3.1
Mar 25, 1998 MB PL2 is incorporated into <productname>PostgreSQL</> 6.3.1
Mar 10, 1998 PL2 released
* add regression test for EUC_JP, EUC_CN and MULE_INTERNAL
......@@ -995,7 +996,7 @@ Version: 0.91 for PgSQL 6.5
Author: Pavel Behal
Revised by: Tatsuo Ishii
Email: behal@opf.slu.cz
Licence: The Same as PostgreSQL
License: The Same as <productname>PostgreSQL</>
Sorry for my Eglish and C code, I'm not native :-)
......@@ -1003,7 +1004,7 @@ Sorry for my Eglish and C code, I'm not native :-)
-->
The WIN1250 character set on Windows client platforms can be used
with <productname>Postgres</productname> with locale support
with <productname>PostgreSQL</productname> with locale support
enabled.
</para>
......@@ -1080,7 +1081,7 @@ Sorry for my Eglish and C code, I'm not native :-)
<title>WIN1250 on Windows/ODBC</title>
<step>
<para>
Compile <productname>Postgres</productname> with locale enabled
Compile <productname>PostgreSQL</productname> with locale enabled
and the multibyte encoding set to <literal>LATIN2</literal>.
</para>
</step>
......
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/client-auth.sgml,v 1.28 2001/11/19 03:58:24 tgl Exp $ -->
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/client-auth.sgml,v 1.29 2001/11/21 05:53:40 thomas Exp $ -->
<chapter id="client-authentication">
<title>Client Authentication</title>
......@@ -9,7 +9,7 @@
<para>
When a client application connects to the database server, it specifies which
<productname>Postgres</productname> user name it wants to connect as,
<productname>PostgreSQL</productname> user name it wants to connect as,
much the same way one logs into a Unix computer as a particular user.
Within the SQL environment the active
database user name determines access privileges to database
......@@ -27,14 +27,14 @@
</para>
<para>
<productname>Postgres</productname> offers a number of different
<productname>PostgreSQL</productname> offers a number of different
client authentication methods. The method to be used can be selected
on the basis of (client) host and database; some authentication methods
allow you to restrict by user name as well.
</para>
<para>
<productname>Postgres</productname> database user names are logically
<productname>PostgreSQL</productname> database user names are logically
separate from user names of the operating system in which the server
runs. If all the users of a particular server also have accounts on
the server's machine, it makes sense to assign database user names
......@@ -136,7 +136,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable
<literal>all</literal> specifies that it applies to all
databases, while the value <literal>sameuser</> identifies the
database with the same name as the connecting user. Otherwise,
this is the name of a specific <productname>Postgres</productname>
this is the name of a specific <productname>PostgreSQL</productname>
database.
</para>
</listitem>
......@@ -152,7 +152,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable
record applies, based on their IP
address. (Of course IP addresses can be spoofed but this
consideration is beyond the scope of
<productname>Postgres</productname>.) The precise logic is that
<productname>PostgreSQL</productname>.) The precise logic is that
<blockquote>
<informalfigure>
<programlisting>(<replaceable>actual-IP-address</replaceable> xor <replaceable>IP-address-field</replaceable>) and <replaceable>IP-mask-field</replaceable></programlisting>
......@@ -179,7 +179,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable
<para>
The connection is allowed unconditionally. This method allows
any user that has login access to the client host to connect as
any <productname>Postgres</productname> user whatsoever.
any <productname>PostgreSQL</productname> user whatsoever.
</para>
</listitem>
</varlistentry>
......@@ -277,7 +277,7 @@ hostssl <replaceable>database</replaceable> <replaceable>IP-address</replaceable
<listitem>
<para>
The identity of the user as determined on login to the
operating system is used by <productname>Postgres</productname>
operating system is used by <productname>PostgreSQL</productname>
to determine whether the user
is allowed to connect as the requested database user.
For TCP/IP connections the user's identity is determined by
......@@ -413,7 +413,7 @@ host all 0.0.0.0 0.0.0.0 krb5
# Allow users from 192.168.x.x hosts to connect to any database, if they
# pass the ident check. If, for example, ident says the user is "bryanh"
# and he requests to connect as PostgreSQL user "guest1", the connection
# and he requests to connect as <productname>PostgreSQL</> user "guest1", the connection
# is allowed if there is an entry in pg_ident.conf for map "omicron" that
# says "bryanh" is allowed to connect as "guest1":
......@@ -451,7 +451,7 @@ local all md5 admins
</indexterm>
<para>
<productname>Postgres</> database passwords are separate from
<productname>PostgreSQL</productname> database passwords are separate from
operating system user passwords. Ordinarily, the password for each
database user is stored in the pg_shadow system catalog table.
Passwords can be managed with the query language commands
......@@ -486,7 +486,7 @@ local all md5 admins
ignored. The password is expected to be encrypted using the
system's <function>crypt()</function> function. The utility
program <application>pg_passwd</application> that is installed
with <productname>Postgres</productname> can be used to manage
with <productname>PostgreSQL</productname> can be used to manage
these password files.
</para>
......@@ -546,7 +546,7 @@ local all md5 admins
</para>
<para>
<productname>Postgres</> operates like a normal Kerberos service.
<productname>PostgreSQL</> operates like a normal Kerberos service.
The name of the service principal is
<replaceable>servicename/hostname@realm</>, where
<replaceable>servicename</> is <literal>postgres</literal>
......@@ -558,18 +558,19 @@ local all md5 admins
</para>
<para>
Client principals must have their <productname>Postgres</> username as
Client principals must have their <productname>PostgreSQL</> username as
their first component, for example
<replaceable>pgusername/otherstuff@realm</>.
At present the realm of the client is not checked by
<productname>Postgres</>; so
<productname>PostgreSQL</>; so
if you have cross-realm authentication enabled, then any principal
in any realm that can communicate with yours will be accepted.
</para>
<para>
Make sure that your server key file is readable (and
preferably only readable) by the Postgres server account (see
preferably only readable) by the
<productname>PostgreSQL</productname> server account (see
<xref linkend="postgres-user">). The location of the key file
is specified with the <varname>krb_server_keyfile</> run time
configuration parameter. (See also <xref linkend="runtime-config">.)
......@@ -621,7 +622,7 @@ local all md5 admins
is to answer questions like <quote>What user initiated the
connection that goes out of your port <replaceable>X</replaceable>
and connects to my port <replaceable>Y</replaceable>?</quote>.
Since <productname>Postgres</> knows both <replaceable>X</> and
Since <productname>PostgreSQL</> knows both <replaceable>X</> and
<replaceable>Y</> when a physical connection is established, it
can interrogate the ident server on the host of the connecting
client and could theoretically determine the operating system user
......@@ -657,7 +658,7 @@ local all md5 admins
<para>
When using ident-based authentication, after having determined the
name of the operating system user that initiated the connection,
<productname>Postgres</productname> checks whether that user is allowed
<productname>PostgreSQL</productname> checks whether that user is allowed
to connect as the database user he is requesting to connect as.
This is controlled by the ident map
argument that follows the <literal>ident</> keyword in the
......@@ -707,7 +708,8 @@ local all md5 admins
logged in to a machine on the 192.168 network that does not have
the Unix user name <systemitem>bryanh</>, <systemitem>ann</>, or <systemitem>robert</> would not be granted access.
Unix user <systemitem>robert</> would only be allowed access when he tries to
connect as Postgres user <systemitem>bob</>, not as <systemitem>robert</>
connect as <productname>PostgreSQL</> user <systemitem>bob</>,
not as <systemitem>robert</>
or anyone else. <systemitem>ann</> would only be allowed to connect as
<systemitem>ann</>. User <systemitem>bryanh</> would be allowed to connect as either
<systemitem>bryanh</> himself or as <systemitem>guest1</>.
......
......@@ -3,7 +3,7 @@
<!--
<Para>
Support for <productname>Postgres</productname> comes primarily from
Support for <productname>PostgreSQL</productname> comes primarily from
this printed documentation, the web-based mailing list archives,
and the mailing lists themselves.
</Para>
......@@ -13,7 +13,7 @@ and the mailing lists themselves.
<Para>
Refer to the introduction in this manual or to the
<ulink url="http://www.postgresql.org"><productname>Postgres</productname> web page</ulink>
<ulink url="http://www.postgresql.org"><productname>PostgreSQL</productname> web page</ulink>
for subscription information to the no-cost mailing lists.
</Para>
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/cvs.sgml,v 1.19 2001/10/09 18:45:59 petere Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/cvs.sgml,v 1.20 2001/11/21 05:53:40 thomas Exp $
CVS code repository
Thomas Lockhart
-->
......@@ -26,7 +26,7 @@ Thomas Lockhart
<title>The <productname>CVS</productname> Repository</title>
<para>
The <productname>Postgres</productname> source code is stored and managed using the
The <productname>PostgreSQL</productname> source code is stored and managed using the
<productname>CVS</productname> code management system.
</para>
......@@ -34,7 +34,7 @@ Thomas Lockhart
At least two methods,
anonymous CVS and <productname>CVSup</productname>,
are available to pull the <productname>CVS</productname> code tree from the
<productname>Postgres</productname> server to your local machine.
<productname>PostgreSQL</productname> server to your local machine.
</para>
<sect1 id="anoncvs">
......@@ -78,12 +78,12 @@ $ cvs -d :pserver:anoncvs@anoncvs.postgresql.org:/projects/cvsroot login
<step>
<para>
Fetch the <productname>Postgres</productname> sources:
Fetch the <productname>PostgreSQL</productname> sources:
<programlisting>
cvs -z3 -d :pserver:anoncvs@anoncvs.postgresql.org:/projects/cvsroot co -P pgsql
</programlisting>
which installs the <productname>Postgres</productname> sources into a
which installs the <productname>PostgreSQL</productname> sources into a
subdirectory <filename>pgsql</filename>
of the directory you are currently in.
......@@ -160,7 +160,7 @@ $ chmod -R go-w pgsql
<para>
<productname>CVS</productname> can do a lot of other things,
such as fetching prior revisions
of the <productname>Postgres</productname> sources
of the <productname>PostgreSQL</productname> sources
rather than the latest development version.
For more info consult the manual that comes with
<productname>CVS</productname>, or see the online
......@@ -292,7 +292,7 @@ cvs commit
<para>
An alternative to using anonymous CVS for retrieving
the <productname>Postgres</productname> source tree
the <productname>PostgreSQL</productname> source tree
is <productname>CVSup</productname>.
<productname>CVSup</productname> was developed by
John Polstra (<email>jdp@polstra.com</email>) to
......@@ -306,7 +306,7 @@ cvs commit
replicate the <emphasis>entire</emphasis> CVS repository on your local system,
allowing fast local access to cvs operations such as <option>log</option>
and <option>diff</option>. Other advantages include fast synchronization to
the <productname>Postgres</productname> server due to an efficient
the <productname>PostgreSQL</productname> server due to an efficient
streaming transfer protocol which only sends the changes since the last update.
</para>
......@@ -327,7 +327,7 @@ cvs commit
<productname>CVS</productname> repository. On one of our systems we
recently set up a repository in <filename>/home/cvs/</filename>,
but had formerly kept it under a
<productname>Postgres</productname> development tree in
<productname>PostgreSQL</productname> development tree in
<filename>/opt/postgres/cvs/</filename>. If you intend to keep your
repository in <filename>/home/cvs/</filename>, then put
......@@ -393,7 +393,7 @@ $ cvsup -L 2 <replaceable class="parameter">postgres.cvsup</replaceable>
<programlisting>
# This file represents the standard CVSup distribution file
# for the PostgreSQL ORDBMS project
# for the <productname>PostgreSQL</> ORDBMS project
# Modified by lockhart@alumni.caltech.edu 1997-08-28
# - Point to my local snapshot source tree
# - Pull the full CVS repository, not just the latest snapshot
......@@ -430,12 +430,12 @@ pgsql
<para>
The following is a suggested <productname>CVSup</productname> config file from
<ulink url="ftp://ftp.postgresql.org/pub/CVSup/README.cvsup">the Postgres ftp site</ulink>
<ulink url="ftp://ftp.postgresql.org/pub/CVSup/README.cvsup">the <productname>PostgreSQL</> ftp site</ulink>
which will fetch the current snapshot only:
<programlisting>
# This file represents the standard CVSup distribution file
# for the PostgreSQL ORDBMS project
# for the <productname>PostgreSQL</> ORDBMS project
#
# Defaults that apply to all the collections
*default host=cvsup.postgresql.org
......@@ -479,7 +479,7 @@ pgsql
You can use pre-built binaries
if you have a platform for which binaries
are posted on
<ulink url="ftp://ftp.postgresql.org/pub">the <productname>Postgres</productname> ftp site</ulink>,
<ulink url="ftp://ftp.postgresql.org/pub">the <productname>PostgreSQL</productname> ftp site</ulink>,
or if you are running FreeBSD, for which
<productname>CVSup</productname> is available as a port.
......@@ -520,7 +520,7 @@ pgsql
<step performance="optional">
<para>
If you have another platform, check for and download the appropriate binary from
<ulink url="ftp://ftp.postgresql.org/pub">the <productname>Postgres</productname> ftp site</ulink>.
<ulink url="ftp://ftp.postgresql.org/pub">the <productname>PostgreSQL</productname> ftp site</ulink>.
</para>
</step>
</substeps>
......@@ -764,7 +764,7 @@ malloc in place, the CVSup system should be rock solid. We have
servers that have been up for weeks and have served many thousands
of clients without any observed problems.
> We hope to have the Postgres tree using CVSup within a month or
> We hope to have the PostgreSQL tree using CVSup within a month or
> so, and hope to retire sup in September...
Great! I'll do my best to help make sure you don't regret it.
......
This diff is collapsed.
This diff is collapsed.
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/dfunc.sgml,v 1.16 2001/11/12 19:19:39 petere Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/dfunc.sgml,v 1.17 2001/11/21 05:53:41 thomas Exp $
-->
<sect2 id="dfunc">
......@@ -51,7 +51,8 @@ $Header: /cvsroot/pgsql/doc/src/sgml/dfunc.sgml,v 1.16 2001/11/12 19:19:39 peter
<!--
Note: Reading GNU Libtool sources is generally a good way of figuring out
this information. The methods used within PostgreSQL source code are not
this information. The methods used within
<productname>PostgreSQL</> source code are not
necessarily ideal.
-->
......@@ -272,7 +273,7 @@ gcc -shared -o foo.so foo.o
<para>
The resulting shared library file can then be loaded into
<productname>Postgres</productname>. When specifying the file name
<productname>PostgreSQL</productname>. When specifying the file name
to the <command>CREATE FUNCTION</command> command, one must give it
the name of the shared library file, not the intermediate object file.
Note that the system's standard shared-library extension (usually
......@@ -303,7 +304,8 @@ ld <other flags> -H512 -T512 -o foo.so -e _nostart \e
-bI:.../lib/postgres.exp -bE:foo.exp foo.o \e
-lm -lc 2>/dev/null
.fi
You should look at the Postgres User's Manual for an explanation of this
You should look at the <citetitle>PostgreSQL User's Manual</>
for an explanation of this
procedure.
-->
......@@ -318,11 +320,12 @@ sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-tabs-mode:nil
sgml-indent-data:t
sgml-parent-document:nil
sgml-default-dtd-file:"./reference.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:("/usr/lib/sgml/catalog")
sgml-local-catalogs:("/usr/share/sgml/catalog")
sgml-local-ecat-files:nil
End:
-->
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/docguide.sgml,v 1.35 2001/10/09 18:45:59 petere Exp $ -->
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/docguide.sgml,v 1.36 2001/11/21 05:53:41 thomas Exp $ -->
<appendix id="docguide">
<title>Documentation</title>
......@@ -68,7 +68,7 @@
<listitem>
<para>
<citetitle>Developer's Guide</citetitle>: assorted information
for developers of PostgreSQL proper
for developers of <productname>PostgreSQL</> proper
</para>
</listitem>
</itemizedlist>
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/ecpg.sgml,v 1.30 2001/11/12 19:19:39 petere Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/ecpg.sgml,v 1.31 2001/11/21 05:53:41 thomas Exp $
-->
<chapter id="ecpg">
......@@ -32,11 +32,11 @@ $Header: /cvsroot/pgsql/doc/src/sgml/ecpg.sgml,v 1.30 2001/11/12 19:19:39 petere
<para>
This describes the embedded <acronym>SQL</acronym> package for
<productname>Postgres</productname>. It works with
<productname>PostgreSQL</productname>. It works with
<acronym>C</acronym> and <acronym>C++</acronym>. It was written by
Linus Tolke (<email>linus@epact.se</email>) and Michael Meskes
(<email>meskes@debian.org</email>). The package is installed with the
<productname>Postgres</> distribution, and carries a similar license.
<productname>PostgreSQL</> distribution, and carries a similar license.
</para>
<sect1 id="ecpg-why">
......@@ -55,7 +55,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/ecpg.sgml,v 1.30 2001/11/12 19:19:39 petere
should work. <application>ecpg</application> was designed to match
this standard as much as possible. It is possible to port embedded
<acronym>SQL</acronym> programs written for other
<acronym>RDBMS</acronym> to <productname>Postgres</productname>.
<acronym>RDBMS</acronym> to <productname>PostgreSQL</productname>.
</para>
</sect1>
......@@ -99,7 +99,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/ecpg.sgml,v 1.30 2001/11/12 19:19:39 petere
<para>
The preprocessor is called <application>ecpg</application>. After
installation it resides in the <productname>Postgres</productname>
installation it resides in the <productname>PostgreSQL</productname>
<filename>bin/</filename> directory.
</para>
</sect2>
......@@ -111,7 +111,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/ecpg.sgml,v 1.30 2001/11/12 19:19:39 petere
<filename>libecpg.a</filename> or <filename>libecpg.so</filename>.
Additionally, the library uses the <filename>libpq</filename>
library for communication to the
<productname>Postgres</productname> server. You will have to link
<productname>PostgreSQL</productname> server. You will have to link
your program using <parameter>-lecpg -lpq</parameter>.
</para>
......@@ -133,7 +133,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/ecpg.sgml,v 1.30 2001/11/12 19:19:39 petere
The most important function , <function>ECPGdo</function>, logs
all <acronym>SQL</acronym> statements with both the expanded
string, i.e. the string with all the input variables inserted,
and the result from the <productname>Postgres</productname>
and the result from the <productname>PostgreSQL</productname>
server. This can be very useful when searching for errors in
your <acronym>SQL</acronym> statements.
</para>
......@@ -153,7 +153,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/ecpg.sgml,v 1.30 2001/11/12 19:19:39 petere
<title>Error handling</title>
<para>
To detect errors from the <productname>Postgres</productname>
To detect errors from the <productname>PostgreSQL</productname>
server, include a line like:
<programlisting>
exec sql include sqlca;
......@@ -241,7 +241,7 @@ struct sqlca
<term><computeroutput>-201 (ECPG_TOO_MANY_ARGUMENTS): Too many arguments line %d.</computeroutput></term>
<listitem>
<para>
This means that <productname>Postgres</productname> has
This means that <productname>PostgreSQL</productname> has
returned more arguments than we have matching variables.
Perhaps you have forgotten a couple of the host variables in
the <command>INTO :var1,:var2</command>-list.
......@@ -253,7 +253,7 @@ struct sqlca
<term><computeroutput>-202 (ECPG_TOO_FEW_ARGUMENTS): Too few arguments line %d.</computeroutput></term>
<listitem>
<para>
This means that <productname>Postgres</productname> has
This means that <productname>PostgreSQL</productname> has
returned fewer arguments than we have host variables. Perhaps
you have too many host variables in the <command>INTO
:var1,:var2</command>-list.
......@@ -277,7 +277,7 @@ struct sqlca
<listitem>
<para>
This means the host variable is of type <type>int</type> and
the field in the <productname>Postgres</productname> database
the field in the <productname>PostgreSQL</productname> database
is of another type and contains a value that cannot be
interpreted as an <type>int</type>. The library uses
<function>strtol()</function> for this conversion.
......@@ -291,7 +291,7 @@ struct sqlca
<para>
This means the host variable is of type <type>unsigned
int</type> and the field in the
<productname>Postgres</productname> database is of another type
<productname>PostgreSQL</productname> database is of another type
and contains a value that cannot be interpreted as an
<type>unsigned int</type>. The library uses
<function>strtoul()</function> for this conversion.
......@@ -304,7 +304,7 @@ struct sqlca
<listitem>
<para>
This means the host variable is of type <type>float</type> and
the field in the <productname>Postgres</productname> database
the field in the <productname>PostgreSQL</productname> database
is of another type and contains a value that cannot be
interpreted as a <type>float</type>. The library uses
<function>strtod()</function> for this conversion.
......@@ -317,7 +317,7 @@ struct sqlca
<listitem>
<para>
This means the host variable is of type <type>bool</type> and
the field in the <productname>Postgres</productname> database
the field in the <productname>PostgreSQL</productname> database
is neither <literal>'t'</> nor <literal>'f'</>.
</para>
</listitem>
......@@ -327,7 +327,7 @@ struct sqlca
<term><computeroutput>-208 (ECPG_EMPTY): Empty query line %d.</computeroutput></term>
<listitem>
<para>
<productname>Postgres</productname> returned <symbol>PGRES_EMPTY_QUERY</symbol>, probably
<productname>PostgreSQL</productname> returned <symbol>PGRES_EMPTY_QUERY</symbol>, probably
because the query indeed was empty.
</para>
</listitem>
......@@ -337,7 +337,7 @@ struct sqlca
<term><computeroutput>-209 (ECPG_MISSING_INDICATOR): NULL value without indicator in line %d.</computeroutput></term>
<listitem>
<para>
<productname>Postgres</productname> returned <symbol>ECPG_MISSING_INDICATOR</symbol>
<productname>PostgreSQL</productname> returned <symbol>ECPG_MISSING_INDICATOR</symbol>
because a NULL was returned and no NULL indicator variable was supplied.
</para>
</listitem>
......@@ -347,7 +347,7 @@ struct sqlca
<term><computeroutput>-210 (ECPG_NO_ARRAY): Variable is not an array in line %d.</computeroutput></term>
<listitem>
<para>
<productname>Postgres</productname> returned <symbol>ECPG_NO_ARRAY</symbol>
<productname>PostgreSQL</productname> returned <symbol>ECPG_NO_ARRAY</symbol>
because an ordinary variable was used in a place that requires
an array.
</para>
......@@ -358,7 +358,7 @@ struct sqlca
<term><computeroutput>-211 (ECPG_DATA_NOT_ARRAY): Data read from backend is not an array in line %d.</computeroutput></term>
<listitem>
<para>
<productname>Postgres</productname> returned <symbol>ECPG_DATA_NOT_ARRAY</symbol>
<productname>PostgreSQL</productname> returned <symbol>ECPG_DATA_NOT_ARRAY</symbol>
because the database returned an ordinary variable in a place
that requires array value.
</para>
......@@ -444,9 +444,9 @@ struct sqlca
<term><computeroutput>-400 (ECPG_PGSQL): Postgres error: %s line %d.</computeroutput></term>
<listitem>
<para>
Some <productname>Postgres</productname> error.
Some <productname>PostgreSQL</productname> error.
The message contains the error message from the
<productname>Postgres</productname> backend.
<productname>PostgreSQL</productname> backend.
</para>
</listitem>
</varlistentry>
......@@ -455,7 +455,7 @@ struct sqlca
<term><computeroutput>-401 (ECPG_TRANS): Error in transaction processing line %d.</computeroutput></term>
<listitem>
<para>
<productname>Postgres</productname> signaled that we cannot start,
<productname>PostgreSQL</productname> signaled that we cannot start,
commit or rollback the transaction.
</para>
</listitem>
......@@ -506,7 +506,7 @@ struct sqlca
<para>
This would require a total redesign of the
<productname>Postgres</productname> access model and the
<productname>PostgreSQL</productname> access model and the
performance gain does not justify the effort.
</para>
</listitem>
......@@ -581,7 +581,7 @@ struct sqlca
<listitem>
<para>
to_date et al. does not exist. However,
<productname>Postgres</productname> has some good conversion
<productname>PostgreSQL</productname> has some good conversion
routines so you probably won't miss them.
</para>
</listitem>
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/extend.sgml,v 1.13 2001/09/30 16:05:54 petere Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/extend.sgml,v 1.14 2001/11/21 05:53:41 thomas Exp $
-->
<chapter id="extend">
......@@ -7,7 +7,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/extend.sgml,v 1.13 2001/09/30 16:05:54 pete
<para>
In the sections that follow, we will discuss how you
can extend the <productname>Postgres</productname>
can extend the <productname>PostgreSQL</productname>
<acronym>SQL</acronym> query language by adding:
<itemizedlist spacing="compact" mark="bullet">
......@@ -38,7 +38,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/extend.sgml,v 1.13 2001/09/30 16:05:54 pete
<title>How Extensibility Works</title>
<para>
<productname>Postgres</productname> is extensible because its operation is
<productname>PostgreSQL</productname> is extensible because its operation is
catalog-driven. If you are familiar with standard
relational systems, you know that they store information
about databases, tables, columns, etc., in what are
......@@ -46,13 +46,13 @@ $Header: /cvsroot/pgsql/doc/src/sgml/extend.sgml,v 1.13 2001/09/30 16:05:54 pete
this the data dictionary). The catalogs appear to the
user as tables like any other, but the <acronym>DBMS</acronym> stores
its internal bookkeeping in them. One key difference
between <productname>Postgres</productname> and standard relational systems is
that <productname>Postgres</productname> stores much more information in its
between <productname>PostgreSQL</productname> and standard relational systems is
that <productname>PostgreSQL</productname> stores much more information in its
catalogs -- not only information about tables and columns,
but also information about its types, functions, access
methods, and so on. These tables can be modified by
the user, and since <productname>Postgres</productname> bases its internal operation
on these tables, this means that <productname>Postgres</productname> can be
the user, and since <productname>PostgreSQL</productname> bases its internal 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
procedures within the <acronym>DBMS</acronym> or by loading modules
......@@ -60,29 +60,29 @@ $Header: /cvsroot/pgsql/doc/src/sgml/extend.sgml,v 1.13 2001/09/30 16:05:54 pete
</para>
<para>
<productname>Postgres</productname> is also unlike most other data managers in
<productname>PostgreSQL</productname> is also unlike most other data managers in
that the server can incorporate user-written code into
itself through dynamic loading. That is, the user can
specify an object code file (e.g., a compiled .o file
or shared library) that implements a new type or function
and <productname>Postgres</productname> will load it as required. Code written
and <productname>PostgreSQL</productname> will load it as required. Code written
in <acronym>SQL</acronym> are even more trivial to add to the server.
This ability to modify its operation <quote>on the fly</quote> makes
<productname>Postgres</productname> uniquely suited for rapid prototyping of new
<productname>PostgreSQL</productname> uniquely suited for rapid prototyping of new
applications and storage structures.
</para>
</sect1>
<sect1 id="type-system">
<title>The <productname>Postgres</productname> Type System</title>
<title>The <productname>PostgreSQL</productname> Type System</title>
<para>
The <productname>Postgres</productname> type system
The <productname>PostgreSQL</productname> type system
can be broken down in several ways.
Types are divided into base types and composite types.
Base types are those, like <firstterm>int4</firstterm>, that are implemented
in a language such as <productname>C</productname>. They generally correspond to
what are often known as <firstterm>abstract data types</firstterm>; <productname>Postgres</productname>
what are often known as <firstterm>abstract data types</firstterm>; <productname>PostgreSQL</productname>
can only operate on such types through methods provided
by the user and only understands the behavior of such
types to the extent that the user describes them.
......@@ -91,13 +91,13 @@ $Header: /cvsroot/pgsql/doc/src/sgml/extend.sgml,v 1.13 2001/09/30 16:05:54 pete
</para>
<para>
<productname>Postgres</productname> stores these types
<productname>PostgreSQL</productname> stores these types
in only one way (within the
file that stores all rows of a table) but the
user can <quote>look inside</quote> at the attributes of these types
from the query language and optimize their retrieval by
(for example) defining indexes on the attributes.
<productname>Postgres</productname> base types are further
<productname>PostgreSQL</productname> base types are further
divided into built-in
types and user-defined types. Built-in types (like
<firstterm>int4</firstterm>) are those that are compiled
......@@ -108,7 +108,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/extend.sgml,v 1.13 2001/09/30 16:05:54 pete
</sect1>
<sect1 id="pg-system-catalogs">
<title>About the <productname>Postgres</productname> System Catalogs</title>
<title>About the <productname>PostgreSQL</productname> System Catalogs</title>
<para>
Having introduced the basic extensibility concepts, we
......@@ -125,7 +125,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/extend.sgml,v 1.13 2001/09/30 16:05:54 pete
them directly.)
<table tocentry="1">
<title>Postgres System Catalogs</title>
<title>PostgreSQL System Catalogs</title>
<titleabbrev>Catalogs</titleabbrev>
<tgroup cols="2">
<thead>
......@@ -190,7 +190,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/extend.sgml,v 1.13 2001/09/30 16:05:54 pete
<para>
<figure float="1" id="EXTEND-CATALOGS">
<title>The major <productname>Postgres</productname> system catalogs</title>
<title>The major <productname>PostgreSQL</productname> system catalogs</title>
<mediaobject>
<imageobject>
<imagedata fileref="catalogs" align="center">
......@@ -246,7 +246,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/extend.sgml,v 1.13 2001/09/30 16:05:54 pete
Nearly every catalog contains some reference to
rows in one or both of these tables. For
example, <productname>Postgres</productname> frequently uses type
example, <productname>PostgreSQL</productname> frequently uses type
signatures (e.g., of functions and operators) to
identify unique rows of other catalogs.
</para>
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/func.sgml,v 1.83 2001/11/20 15:42:44 momjian Exp $
Postgres documentation
$Header: /cvsroot/pgsql/doc/src/sgml/func.sgml,v 1.84 2001/11/21 05:53:41 thomas Exp $
PostgreSQL documentation
-->
<chapter id="functions">
......@@ -15,7 +15,7 @@ Postgres documentation
</indexterm>
<para>
<productname>Postgres</productname> provides a large number of
<productname>PostgreSQL</productname> provides a large number of
functions and operators for the built-in data types. Users can also
define their own functions and operators, as described in the
<citetitle>Programmer's Guide</citetitle>. The
......@@ -1349,7 +1349,7 @@ Postgres documentation
<para>
There are two separate approaches to pattern matching provided by
<productname>Postgres</productname>: the <acronym>SQL</acronym>
<productname>PostgreSQL</productname>: the <acronym>SQL</acronym>
<function>LIKE</function> operator and
<acronym>POSIX</acronym>-style regular expressions.
</para>
......@@ -1446,7 +1446,7 @@ Postgres documentation
The keyword <token>ILIKE</token> can be used instead of
<token>LIKE</token> to make the match case insensitive according
to the active locale. This is not in the <acronym>SQL</acronym> standard but is a
<productname>Postgres</productname> extension.
<productname>PostgreSQL</productname> extension.
</para>
<para>
......@@ -1456,7 +1456,7 @@ Postgres documentation
<literal>!~~</literal> and <literal>!~~*</literal> operators that
represent <function>NOT LIKE</function> and <function>NOT
ILIKE</function>. All of these operators are
<productname>Postgres</productname>-specific.
<productname>PostgreSQL</productname>-specific.
</para>
</sect2>
......@@ -1537,7 +1537,7 @@ Postgres documentation
<command>egrep</command>; 1003.2 calls these
<quote>extended</quote> REs) and obsolete REs (roughly those of
<command>ed</command>; 1003.2 <quote>basic</quote> REs).
<productname>Postgres</productname> implements the modern form.
<productname>PostgreSQL</productname> implements the modern form.
</para>
<para>
......@@ -1786,7 +1786,7 @@ Postgres documentation
</note>
<para>
The <productname>Postgres</productname> formatting functions
The <productname>PostgreSQL</productname> formatting functions
provide a powerful set of tools for converting various data types
(date/time, integer, floating point, numeric) to formatted strings
and for converting from formatted strings to specific data types.
......@@ -2137,7 +2137,7 @@ Postgres documentation
in a string constant, a double backslash
(<quote><literal>\\</literal></quote>) must be entered; for
example <literal>'\\HH\\MI\\SS'</literal>. This is true for
any string constant in <productname>Postgres</productname>.
any string constant in <productname>PostgreSQL</productname>.
</para>
</listitem>
......@@ -2311,7 +2311,7 @@ Postgres documentation
<listitem>
<para>
<literal>PL</literal>, <literal>SG</literal>, and
<literal>TH</literal> are <productname>Postgres</productname>
<literal>TH</literal> are <productname>PostgreSQL</productname>
extensions.
</para>
</listitem>
......@@ -3217,7 +3217,7 @@ SELECT CURRENT_TIMESTAMP;
<para>
The function <function>now()</function> is the traditional
<productname>Postgres</productname> equivalent to
<productname>PostgreSQL</productname> equivalent to
<function>CURRENT_TIMESTAMP</function>.
</para>
......@@ -3889,7 +3889,7 @@ SELECT TIMESTAMP 'now';
</table>
<para>
This section describes <productname>Postgres</productname>'s functions
This section describes <productname>PostgreSQL</productname>'s functions
for operating on <firstterm>sequence objects</>.
Sequence objects (also called sequence generators or
just sequences) are special single-row tables created with
......@@ -4013,7 +4013,7 @@ SELECT setval('foo', 42, false); <lineannotation>Next nextval() will return 4
<para>
This section describes the <acronym>SQL</acronym>-compliant conditional expressions
available in <productname>Postgres</productname>.
available in <productname>PostgreSQL</productname>.
</para>
<tip>
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/geqo.sgml,v 1.19 2001/10/09 18:46:00 petere Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/geqo.sgml,v 1.20 2001/11/21 05:53:41 thomas Exp $
Genetic Optimizer
-->
......@@ -49,14 +49,14 @@ Genetic Optimizer
grows exponentially with the number of joins included in it. Further
optimization effort is caused by the support of a variety of
<firstterm>join methods</firstterm>
(e.g., nested loop, hash join, merge join in <productname>Postgres</productname>) to
(e.g., nested loop, hash join, merge join in <productname>PostgreSQL</productname>) to
process individual joins and a diversity of
<firstterm>indexes</firstterm> (e.g., R-tree,
B-tree, hash in <productname>Postgres</productname>) as access paths for relations.
B-tree, hash in <productname>PostgreSQL</productname>) as access paths for relations.
</para>
<para>
The current <productname>Postgres</productname> optimizer
The current <productname>PostgreSQL</productname> optimizer
implementation performs a <firstterm>near-exhaustive search</firstterm>
over the space of alternative strategies. This query
optimization technique is inadequate to support database application
......@@ -67,7 +67,7 @@ Genetic Optimizer
<para>
The Institute of Automatic Control at the University of Mining and
Technology, in Freiberg, Germany, encountered the described problems as its
folks wanted to take the <productname>Postgres</productname> DBMS as the backend for a decision
folks wanted to take the <productname>PostgreSQL</productname> DBMS as the backend for a decision
support knowledge based system for the maintenance of an electrical
power grid. The DBMS needed to handle large join queries for the
inference machine of the knowledge based system.
......@@ -166,7 +166,7 @@ Genetic Optimizer
</sect1>
<sect1 id="geqo-pg-intro">
<title>Genetic Query Optimization (<acronym>GEQO</acronym>) in Postgres</title>
<title>Genetic Query Optimization (<acronym>GEQO</acronym>) in PostgreSQL</title>
<para>
The <acronym>GEQO</acronym> module is intended for the solution of the query
......@@ -183,7 +183,7 @@ Genetic Optimizer
is encoded by the integer string '4-1-3-2',
which means, first join relation '4' and '1', then '3', and
then '2', where 1, 2, 3, 4 are relids within the
<productname>Postgres</productname> optimizer.
<productname>PostgreSQL</productname> optimizer.
</para>
<para>
......@@ -193,7 +193,7 @@ Genetic Optimizer
<para>
Specific characteristics of the <acronym>GEQO</acronym>
implementation in <productname>Postgres</productname>
implementation in <productname>PostgreSQL</productname>
are:
<itemizedlist spacing="compact" mark="bullet">
......@@ -226,7 +226,7 @@ Genetic Optimizer
<para>
The <acronym>GEQO</acronym> module allows
the <productname>Postgres</productname> query optimizer to
the <productname>PostgreSQL</productname> query optimizer to
support large join queries effectively through
non-exhaustive search.
</para>
......
......@@ -96,7 +96,7 @@ A few notes on the sources:
</ProgramListing>
Roger that!! I thought it could be related to a number of
<ProductName>Postgres</ProductName> versions
<ProductName>PostgreSQL</ProductName> versions
back and tried the query. My system went nuts and I had to shoot down
the postmaster in about ten minutes.
</para>
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/Attic/indexcost.sgml,v 2.9 2001/09/13 15:55:22 petere Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/Attic/indexcost.sgml,v 2.10 2001/11/21 05:53:41 thomas Exp $
-->
<chapter id="indexcost">
......@@ -28,7 +28,8 @@ $Header: /cvsroot/pgsql/doc/src/sgml/Attic/indexcost.sgml,v 2.9 2001/09/13 15:55
<note>
<para>
Prior to Postgres 7.0, a different scheme was used for registering
Prior to <productname>PostgreSQL</productname> 7.0, a different
scheme was used for registering
index-specific cost estimation functions.
</para>
</note>
......
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/indices.sgml,v 1.27 2001/11/19 09:05:01 tgl Exp $ -->
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/indices.sgml,v 1.28 2001/11/21 05:53:41 thomas Exp $ -->
<chapter id="indexes">
<title id="indexes-title">Indexes</title>
......@@ -105,7 +105,7 @@ CREATE INDEX test1_id_index ON test1 (id);
<title>Index Types</title>
<para>
<productname>Postgres</productname> provides several index types:
<productname>PostgreSQL</productname> provides several index types:
B-tree, R-tree, GiST, and Hash. Each index type is more appropriate for
a particular query type because of the algorithm it uses.
<indexterm>
......@@ -119,7 +119,7 @@ CREATE INDEX test1_id_index ON test1 (id);
By
default, the <command>CREATE INDEX</command> command will create a
B-tree index, which fits the most common situations. In
particular, the <productname>Postgres</productname> query optimizer
particular, the <productname>PostgreSQL</productname> query optimizer
will consider using a B-tree index whenever an indexed column is
involved in a comparison using one of these operators:
......@@ -146,7 +146,7 @@ CREATE INDEX test1_id_index ON test1 (id);
<synopsis>
CREATE INDEX <replaceable>name</replaceable> ON <replaceable>table</replaceable> USING RTREE (<replaceable>column</replaceable>);
</synopsis>
The <productname>Postgres</productname> query optimizer will
The <productname>PostgreSQL</productname> query optimizer will
consider using an R-tree index whenever an indexed column is
involved in a comparison using one of these operators:
......@@ -238,7 +238,7 @@ CREATE INDEX test2_mm_idx ON test2 (major, minor);
<para>
Currently, only the B-tree and GiST implementations support multicolumn
indexes. Up to 16 columns may be specified. (This limit can be
altered when building <productname>Postgres</productname>; see the
altered when building <productname>PostgreSQL</productname>; see the
file <filename>pg_config.h</filename>.)
</para>
......@@ -546,7 +546,7 @@ Subject: Re: [QUESTIONS] PRIMARY KEY | UNIQUE
must understand that indexes are implementation-dependent.
<acronym>SQL</acronym> does not
define the implementation, merely the relations between data in the
database. <productname>Postgres</productname> does allow
database. <productname>PostgreSQL</productname> does allow
non-unique indexes, but indexes
used to enforce <acronym>SQL</acronym> keys are always unique.
</para>
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/info.sgml,v 1.13 2001/11/08 23:37:50 petere Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/info.sgml,v 1.14 2001/11/21 05:53:41 thomas Exp $
-->
<sect1 id="resources">
......@@ -127,7 +127,8 @@ $Header: /cvsroot/pgsql/doc/src/sgml/info.sgml,v 1.13 2001/11/08 23:37:50 petere
answered, to share experiences with other users, and to contact
the developers. Consult the <ulink
url="http://www.postgresql.org/users-lounge/">User's
Lounge</ulink> section of the PostgreSQL web site for details.
Lounge</ulink> section of the <productname>PostgreSQL</>
web site for details.
</para>
</listitem>
</varlistentry>
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/Attic/inherit.sgml,v 1.16 2001/11/19 03:58:23 tgl Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/Attic/inherit.sgml,v 1.17 2001/11/21 05:53:41 thomas Exp $
-->
<chapter id="inherit">
......@@ -25,11 +25,11 @@ CREATE TABLE capitals (
In this case, a row of capitals <firstterm>inherits</firstterm> all
attributes (name, population, and altitude) from its
parent, cities. The type of the attribute name is
<type>text</type>, a native <productname>Postgres</productname> type for variable length
<type>text</type>, a native <productname>PostgreSQL</productname> type for variable length
ASCII strings. The type of the attribute population is
<type>float</type>, a native <productname>Postgres</productname> type for double precision
<type>float</type>, a native <productname>PostgreSQL</productname> type for double precision
floating point numbers. State capitals have an extra
attribute, state, that shows their state. In <productname>Postgres</productname>,
attribute, state, that shows their state. In <productname>PostgreSQL</productname>,
a table can inherit from zero or more other tables,
and a query can reference either all rows of a
table or all rows of a table plus all of its
......@@ -150,7 +150,7 @@ SELECT name, altitude
<note>
<title>Deprecated</title>
<para>
In previous versions of <productname>Postgres</productname>, the
In previous versions of <productname>PostgreSQL</productname>, the
default was not to get access to child tables. This was found to
be error prone and is also in violation of SQL99. Under the old
syntax, to get the sub-tables you append <literal>*</literal> to the table name.
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/intro.sgml,v 1.16 2001/10/09 18:46:00 petere Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/intro.sgml,v 1.17 2001/11/21 05:53:41 thomas Exp $
-->
<preface id="preface">
......@@ -44,7 +44,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/intro.sgml,v 1.16 2001/10/09 18:46:00 peter
models in part because of its <quote>Spartan simplicity</quote>.
However, as mentioned, this simplicity often makes the
implementation of certain applications very difficult.
<productname>Postgres</productname> offers substantial additional
<productname>PostgreSQL</productname> offers substantial additional
power by incorporating the following additional
concepts in such a way that users can easily
extend the system:
......@@ -82,16 +82,16 @@ $Header: /cvsroot/pgsql/doc/src/sgml/intro.sgml,v 1.16 2001/10/09 18:46:00 peter
</para>
<para>
These features put <productname>Postgres</productname> into the
These features put <productname>PostgreSQL</productname> into the
category of databases referred to as
<firstterm>object-relational</firstterm>. Note that this is distinct
from those referred to as <firstterm>object-oriented</firstterm>,
which in general are not as well suited to supporting the
traditional relational database languages.
So, although <productname>Postgres</productname> has some
So, although <productname>PostgreSQL</productname> has some
object-oriented features, it is firmly in the relational database
world. In fact, some commercial databases have recently
incorporated features pioneered by <productname>Postgres</productname>.
incorporated features pioneered by <productname>PostgreSQL</productname>.
</para>
</sect1>
......
This diff is collapsed.
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/legal.sgml,v 1.12 2001/10/04 22:28:44 petere Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/legal.sgml,v 1.13 2001/11/21 05:53:41 thomas Exp $
-->
<copyright>
......@@ -56,14 +56,15 @@ There is no legal requirement to make trademark acknowledgements in
references to third party products that happen to have trademarked
names.
The exception would be if PostgreSQL were to license a particular
The exception would be if <productname>PostgreSQL</>
were to license a particular
trademark and the trademark holder makes this requirement (as in the
case of UNIX and Java).
What is not allowed, however, is to use a trademark name in a way that
could lead people to believe that they label PostgreSQL products.
E.g., "the PostgreSQL UNIX database system" would probably be illegal,
whereas "PostgreSQL, which runs on many UNIX computer systems" is
could lead people to believe that they label <productname>PostgreSQL</> products.
E.g., "the <productname>PostgreSQL</> UNIX database system" would probably be illegal,
whereas "<productname>PostgreSQL</>, which runs on many UNIX computer systems" is
fine. This is independent of whether a trademark acknowledgement is
made.
......
......@@ -11,7 +11,7 @@
<Para>
<literal>pgtcl</literal> is a Tcl package for front-end programs
to interface with <ProductName>Postgres</ProductName>
to interface with <ProductName>PostgreSQL</ProductName>
backends. It makes most of the functionality of <literal>libpq</literal> available to
Tcl scripts.
</Para>
......@@ -114,7 +114,7 @@ These commands are described further on subsequent pages.
<Para>
The pg_lo* routines are interfaces to the Large Object features of
<ProductName>Postgres</ProductName>.
<ProductName>PostgreSQL</ProductName>.
The functions are designed to mimic the analogous file system functions in
the standard Unix file system interface.
The pg_lo* routines should be used within a BEGIN/END transaction
......@@ -293,7 +293,7 @@ Handles start with the prefix <literal>pgsql</literal>.
<TITLE>Description
</TITLE>
<PARA><FUNCTION>pg_connect</FUNCTION> opens a connection to the
<ProductName>Postgres</ProductName> backend.
<ProductName>PostgreSQL</ProductName> backend.
</Para>
<para>
......@@ -379,7 +379,7 @@ pg_disconnect <REPLACEABLE CLASS="PARAMETER">dbHandle</REPLACEABLE>
</REFSECT1INFO>
<TITLE>Description
</TITLE>
<PARA><FUNCTION>pg_disconnect</FUNCTION> closes a connection to the <ProductName>Postgres</ProductName> backend.
<PARA><FUNCTION>pg_disconnect</FUNCTION> closes a connection to the <ProductName>PostgreSQL</ProductName> backend.
</PARA>
</REFSECT1>
......@@ -553,7 +553,7 @@ to obtain the results of the query.
<TITLE>Description
</TITLE>
<PARA>
<FUNCTION>pg_exec</FUNCTION> submits a query to the <ProductName>Postgres</ProductName> backend and returns a result.
<FUNCTION>pg_exec</FUNCTION> submits a query to the <ProductName>PostgreSQL</ProductName> backend and returns a result.
Query result handles start with the connection handle and add a period
and a result number.
......@@ -896,7 +896,7 @@ pg_select <REPLACEABLE CLASS="PARAMETER">dbHandle</REPLACEABLE> <REPLACEABLE CLA
</TITLE>
<PARA>
<FUNCTION>pg_select</FUNCTION> submits a SELECT query to the
<ProductName>Postgres</ProductName> backend, and executes a
<ProductName>PostgreSQL</ProductName> backend, and executes a
given chunk of code for each tuple in the result.
The <REPLACEABLE CLASS="PARAMETER">queryString</REPLACEABLE>
must be a SELECT statement. Anything else returns an error.
......@@ -1015,7 +1015,7 @@ when a matching notification arrives.
</TITLE>
<PARA><FUNCTION>pg_listen</FUNCTION> creates, changes, or cancels a request
to listen for asynchronous NOTIFY messages from the
<ProductName>Postgres</ProductName> backend. With a <parameter>callbackCommand</>
<ProductName>PostgreSQL</ProductName> backend. With a <parameter>callbackCommand</>
parameter, the request is established, or the command string of an already
existing request is replaced. With no <parameter>callbackCommand</> parameter, a prior
request is canceled.
......@@ -1025,7 +1025,7 @@ request is canceled.
After a <FUNCTION>pg_listen</FUNCTION> request is established,
the specified command string is executed whenever a NOTIFY message bearing
the given name arrives from the backend. This occurs when any
<ProductName>Postgres</ProductName> client application issues a NOTIFY command
<ProductName>PostgreSQL</ProductName> client application issues a NOTIFY command
referencing that name. (Note that the name can be, but does not have to be,
that of an existing relation in the database.)
The command string is executed from the Tcl idle loop. That is the normal
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/Attic/libpq++.sgml,v 1.34 2001/11/19 03:58:24 tgl Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/Attic/libpq++.sgml,v 1.35 2001/11/21 05:53:41 thomas Exp $
-->
<chapter id="libpqplusplus">
......@@ -7,23 +7,23 @@ $Header: /cvsroot/pgsql/doc/src/sgml/Attic/libpq++.sgml,v 1.34 2001/11/19 03:58:
<para>
<filename>libpq++</filename> is the C++ API to
<productname>Postgres</productname>.
<productname>PostgreSQL</productname>.
<filename>libpq++</filename> is a set of classes that allow
client programs to connect to the
<productname>Postgres</productname> backend server. These connections
<productname>PostgreSQL</productname> backend server. These connections
come in two forms: a Database Class and a Large Object class.
</para>
<para>
The Database Class is intended for manipulating a database. You can
send all sorts of SQL queries to the <productname>Postgres</productname>
send all sorts of SQL queries to the <productname>PostgreSQL</productname>
backend server and retrieve the responses of the server.
</para>
<para>
The Large Object Class is intended for manipulating a large object
in a database. Although a Large Object instance can send normal
queries to the <productname>Postgres</productname> backend server
queries to the <productname>PostgreSQL</productname> backend server
it is only intended for simple
queries that do not return any data. A large object should be seen
as a file stream. In the future it should behave much like the C++ file
......@@ -91,13 +91,13 @@ $Header: /cvsroot/pgsql/doc/src/sgml/Attic/libpq++.sgml,v 1.34 2001/11/19 03:58:
<para>
<envar>PGPORT</envar> sets the default TCP port number or Unix-domain
socket file extension for communicating with the
<productname>Postgres</productname> backend.
<productname>PostgreSQL</productname> backend.
</para>
</listitem>
<listitem>
<para>
<envar>PGDATABASE</envar> sets the default
<productname>Postgres</productname> database name.
<productname>PostgreSQL</productname> database name.
</para>
</listitem>
<listitem>
......@@ -115,9 +115,9 @@ $Header: /cvsroot/pgsql/doc/src/sgml/Attic/libpq++.sgml,v 1.34 2001/11/19 03:58:
<listitem>
<para>
<envar>PGREALM</envar> sets the Kerberos realm to use with
<productname>Postgres</productname>,
<productname>PostgreSQL</productname>,
if it is different from the local realm. If
<envar>PGREALM</envar> is set, <productname>Postgres</productname>
<envar>PGREALM</envar> is set, <productname>PostgreSQL</productname>
applications will attempt
authentication with servers for this realm and use
separate ticket files to avoid conflicts with local
......@@ -128,7 +128,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/Attic/libpq++.sgml,v 1.34 2001/11/19 03:58:
<listitem>
<para>
<envar>PGOPTIONS</envar> sets additional runtime options for
the <productname>Postgres</productname> backend.
the <productname>PostgreSQL</productname> backend.
</para>
</listitem>
<listitem>
......@@ -142,7 +142,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/Attic/libpq++.sgml,v 1.34 2001/11/19 03:58:
<para>
The following environment variables can be used to specify user-level default
behavior for every Postgres session:
behavior for every <productname>PostgreSQL</productname> session:
<itemizedlist>
<listitem>
......@@ -162,7 +162,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/Attic/libpq++.sgml,v 1.34 2001/11/19 03:58:
<para>
The following environment variables can be used to specify default internal
behavior for every Postgres session:
behavior for every <productname>PostgreSQL</productname> session:
<itemizedlist>
<listitem>
......@@ -641,7 +641,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/Attic/libpq++.sgml,v 1.34 2001/11/19 03:58:
<title>Asynchronous Notification</title>
<para>
<productname>Postgres</productname> supports asynchronous notification
<productname>PostgreSQL</productname> supports asynchronous notification
via the <command>LISTEN</command> and <command>NOTIFY</command>
commands. A backend registers its interest in a particular semaphore
with the <command>LISTEN</command> command.
......@@ -706,7 +706,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/Attic/libpq++.sgml,v 1.34 2001/11/19 03:58:
<title>Functions Associated with the COPY Command</title>
<para>
The <command>copy</command> command in <productname>Postgres</productname>
The <command>copy</command> command in <productname>PostgreSQL</productname>
has options to read from or write to the network
connection used by <filename>libpq++</filename>.
Therefore, functions are necessary to
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/libpq.sgml,v 1.78 2001/11/20 20:28:31 momjian Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/libpq.sgml,v 1.79 2001/11/21 05:53:41 thomas Exp $
-->
<chapter id="libpq">
......@@ -892,7 +892,7 @@ undefined. A call to <function>PQescapeString</> writes an escaped
version of the <parameter>from</> string to the <parameter>to</>
buffer, replacing special characters so that they cannot cause any
harm, and adding a terminating NUL character. The single quotes that
must surround PostgreSQL string literals are not part of the result
must surround <productname>PostgreSQL</> string literals are not part of the result
string.
</para>
<para>
......@@ -2152,7 +2152,7 @@ foo.c:95: `PGRES_TUPLES_OK' undeclared (first use in this function)
<listitem>
<para>
Point your compiler to the directory where the PostgreSQL header
Point your compiler to the directory where the <productname>PostgreSQL</> header
files were installed, by supplying the
<literal>-I<replaceable>directory</replaceable></literal> option
to your compiler. (In some cases the compiler will look into
......@@ -2239,7 +2239,7 @@ testlibpq.o(.text+0xa4): undefined reference to `PQerrorMessage'
<indexterm><primary>libpq-int.h</></>
If your codes references the header file
<filename>libpq-int.h</filename> and you refuse to fix your code to
not use it, starting in PostgreSQL 7.2, this file will be found in
not use it, starting in <productname>PostgreSQL</> 7.2, this file will be found in
<filename><replaceable>includedir</replaceable>/postgresql/internal/libpq-int.h</filename>,
so you need to add the appropriate <option>-I</option> option to
your compiler command line.
......@@ -2258,7 +2258,7 @@ testlibpq.o(.text+0xa4): undefined reference to `PQerrorMessage'
/*
* testlibpq.c
*
* Test the C version of libpq, the PostgreSQL frontend
* Test the C version of libpq, the <productname>PostgreSQL</> frontend
* library.
*/
#include &lt;stdio.h&gt;
......@@ -2509,7 +2509,7 @@ main()
<programlisting>
/*
* testlibpq3.c Test the C version of Libpq, the Postgres frontend
* testlibpq3.c Test the C version of Libpq, the <productname>PostgreSQL</> frontend
* library. tests the binary cursor interface
*
*
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/maintenance.sgml,v 1.8 2001/11/20 04:27:49 tgl Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/maintenance.sgml,v 1.9 2001/11/21 05:53:41 thomas Exp $
-->
<chapter id="maintenance">
......@@ -393,7 +393,7 @@ VACUUM
<para>
The simplest production-grade approach to managing log output is to send it
all to <application>syslog</> and let <application>syslog</> deal with file
rotation. To do this, make sure <productname>Postgres</> was built with
rotation. To do this, make sure <productname>PostgreSQL</> was built with
the <option>--enable-syslog</> configure option, and set
<literal>syslog</> to 2
(log to syslog only) in <filename>postgresql.conf</>.
......@@ -415,7 +415,7 @@ VACUUM
<userinput>pg_ctl start | logrotate</userinput>
</screen>
The <productname>Postgres</> distribution doesn't include a suitable
The <productname>PostgreSQL</> distribution doesn't include a suitable
log rotation program, but there are many available on the net;
one is included in the Apache distribution, for example.
</para>
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/manage-ag.sgml,v 2.18 2001/11/18 00:38:00 tgl Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/manage-ag.sgml,v 2.19 2001/11/21 05:53:41 thomas Exp $
-->
<chapter id="managing-databases">
......@@ -30,7 +30,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/manage-ag.sgml,v 2.18 2001/11/18 00:38:00 t
</note>
<para>
In order to create or drop databases, the <productname>Postgres</>
In order to create or drop databases, the <productname>PostgreSQL</>
<application>postmaster</> must be up and running (see <xref
linkend="postmaster-start">).
</para>
......@@ -123,7 +123,8 @@ createdb <replaceable class="parameter">dbname</replaceable>
There is a second standard system database named <literal>template0</>.
This database contains the same data as the initial contents of
<literal>template1</>, that is, only the standard objects predefined by
your version of Postgres. <literal>template0</> should never be changed
your version of <productname>PostgreSQL</productname>.
<literal>template0</> should never be changed
after <literal>initdb</>. By instructing <command>CREATE DATABASE</> to
copy <literal>template0</> instead of <literal>template1</>, you can
create a <quote>virgin</> user database that contains none of the
......@@ -283,7 +284,7 @@ CREATE DATABASE <replaceable>name</> WITH LOCATION = '<replaceable>location</>'
It can also be possible to specify absolute paths directly to the
<command>CREATE DATABASE</> command without defining environment
variables. This is disallowed by default because it is a security
risk. To allow it, you must compile <productname>Postgres</> with
risk. To allow it, you must compile <productname>PostgreSQL</> with
the C preprocessor macro <literal>ALLOW_ABSOLUTE_DBPATHS</>
defined. One way to do this is to run the compilation step like
this:
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/Attic/manage.sgml,v 1.19 2001/11/19 03:58:24 tgl Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/Attic/manage.sgml,v 1.20 2001/11/21 05:53:41 thomas Exp $
-->
<Chapter Id="manage">
......@@ -13,13 +13,13 @@ $Header: /cvsroot/pgsql/doc/src/sgml/Attic/manage.sgml,v 1.19 2001/11/19 03:58:2
<Para>
Although the <FirstTerm>site administrator</FirstTerm> is responsible for overall management
of the <ProductName>Postgres</ProductName> installation, some databases within the
of the <ProductName>PostgreSQL</ProductName> installation, some databases within the
installation may be managed by another person,
designated the <FirstTerm>database administrator</FirstTerm>.
This assignment of responsibilities occurs when a database is created.
A user may be assigned explicit privileges to create databases and/or to create new users.
A user assigned both privileges can perform most administrative tasks
within <ProductName>Postgres</ProductName>, but will
within <ProductName>PostgreSQL</ProductName>, but will
not by default have the same operating system privileges as the site administrator.
</Para>
......@@ -34,14 +34,14 @@ $Header: /cvsroot/pgsql/doc/src/sgml/Attic/manage.sgml,v 1.19 2001/11/19 03:58:2
<Para>
Databases are created by the <Command>CREATE DATABASE</Command>
command issued from within
<ProductName>Postgres</ProductName>. <Application>createdb</Application>
<ProductName>PostgreSQL</ProductName>. <Application>createdb</Application>
is a shell script provided to give the same functionality from the
Unix command line.
</Para>
<Para>
The <ProductName>Postgres</ProductName> backend must be running for either method
to succeed, and the user issuing the command must be the <ProductName>Postgres</ProductName>
The <ProductName>PostgreSQL</ProductName> backend must be running for either method
to succeed, and the user issuing the command must be the <ProductName>PostgreSQL</ProductName>
<FirstTerm>superuser</FirstTerm> or have been assigned database creation privileges by the
superuser.
</Para>
......@@ -71,7 +71,7 @@ ERROR: CREATE DATABASE: Permission denied.
database administrator of the database you just created.
Database names must have an alphabetic first
character and are limited to 31 characters in length.
<ProductName>Postgres</ProductName> allows you to create any number of
<ProductName>PostgreSQL</ProductName> allows you to create any number of
databases at a given site.
</Para>
......@@ -157,7 +157,7 @@ mydb=> \h
Once you have finished entering your queries into the
workspace, you can pass the contents of the workspace
to the <ProductName>Postgres</ProductName> server by typing:
to the <ProductName>PostgreSQL</ProductName> server by typing:
<ProgramListing>
mydb=> \g
</ProgramListing>
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/mvcc.sgml,v 2.19 2001/10/09 18:46:00 petere Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/mvcc.sgml,v 2.20 2001/11/21 05:53:41 thomas Exp $
-->
<chapter id="mvcc">
......@@ -16,7 +16,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/mvcc.sgml,v 2.19 2001/10/09 18:46:00 petere
is an advanced technique for improving database performance in a
multi-user environment.
Vadim Mikheev (<email>vadim@krs.ru</email>) provided
the implementation for <productname>Postgres</productname>.
the implementation for <productname>PostgreSQL</productname>.
</para>
</abstract>
......@@ -25,7 +25,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/mvcc.sgml,v 2.19 2001/10/09 18:46:00 petere
<para>
Unlike most other database systems which use locks for concurrency control,
<productname>Postgres</productname>
<productname>PostgreSQL</productname>
maintains data consistency by using a multiversion model.
This means that while querying a database each transaction sees
a snapshot of data (a <firstterm>database version</firstterm>)
......@@ -191,7 +191,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/mvcc.sgml,v 2.19 2001/10/09 18:46:00 petere
</para>
<para>
<productname>Postgres</productname>
<productname>PostgreSQL</productname>
offers the read committed and serializable isolation levels.
</para>
</sect1>
......@@ -206,7 +206,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/mvcc.sgml,v 2.19 2001/10/09 18:46:00 petere
<para>
<firstterm>Read Committed</firstterm>
is the default isolation level in <productname>Postgres</productname>.
is the default isolation level in <productname>PostgreSQL</productname>.
When a transaction runs on this isolation level,
a <command>SELECT</command> query sees only data committed before the
query began and never sees either uncommitted data or changes committed
......@@ -324,7 +324,7 @@ ERROR: Can't serialize access due to concurrent update
<title>Data consistency checks at the application level</title>
<para>
Because readers in <productname>Postgres</productname>
Because readers in <productname>PostgreSQL</productname>
don't lock data, regardless of
transaction isolation level, data read by one transaction can be
overwritten by another concurrent transaction. In other words,
......@@ -354,15 +354,15 @@ ERROR: Can't serialize access due to concurrent update
concurrent updates, while <command>LOCK TABLE</command> protects the
whole table.)
This should be taken into account when porting applications to
<productname>Postgres</productname> from other environments.
<productname>PostgreSQL</productname> from other environments.
<note>
<para>
Before version 6.5 <productname>Postgres</productname>
Before version 6.5 <productname>PostgreSQL</productname>
used read-locks and so the
above consideration is also the case
when upgrading to 6.5 (or higher) from previous
<productname>Postgres</productname> versions.
<productname>PostgreSQL</productname> versions.
</para>
</note>
</para>
......@@ -376,10 +376,10 @@ ERROR: Can't serialize access due to concurrent update
</indexterm>
<para>
<productname>Postgres</productname>
<productname>PostgreSQL</productname>
provides various lock modes to control concurrent
access to data in tables. Some of these lock modes are acquired by
<productname>Postgres</productname>
<productname>PostgreSQL</productname>
automatically before statement execution, while others are
provided to be used by applications. All lock modes acquired in a
transaction are held for the duration
......@@ -559,7 +559,7 @@ ERROR: Can't serialize access due to concurrent update
</para>
<para>
<productname>Postgres</productname>
<productname>PostgreSQL</productname>
doesn't remember any information about modified rows in memory and
so has no limit to the number of rows locked at one time. However,
locking a row may cause a disk write; thus, for example,
......@@ -581,11 +581,11 @@ ERROR: Can't serialize access due to concurrent update
<title>Locking and Indexes</title>
<para>
Though <productname>Postgres</productname>
Though <productname>PostgreSQL</productname>
provides nonblocking read/write access to table
data, nonblocking read/write access is not currently offered for every
index access method implemented
in <productname>Postgres</productname>.
in <productname>PostgreSQL</productname>.
</para>
<para>
......
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/nls.sgml,v 1.1 2001/06/02 18:25:16 petere Exp $ -->
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/nls.sgml,v 1.2 2001/11/21 05:53:41 thomas Exp $ -->
<chapter id="nls">
<docinfo>
......@@ -14,11 +14,13 @@
<title>For the Translator</title>
<para>
PostgreSQL programs (server and client) can issue their messages in
<productname>PostgreSQL</>
programs (server and client) can issue their messages in
your favorite language -- if the messages have been translated.
Creating and maintaining translated message sets needs the help of
people who speak their own language well and want to contribute to
the PostgreSQL effort. You do not have to be a programmer at all
the <productname>PostgreSQL</> effort. You do not have to be a
programmer at all
to do this. This section explains how to help.
</para>
......@@ -300,7 +302,8 @@ msgstr "Die Datei %2$s hat %1$u Zeichen."
<para>
This section describes how to support native language support in a
program or library that is part of the PostgreSQL distribution.
program or library that is part of the
<productname>PostgreSQL</> distribution.
Currently, it only applies to C programs.
</para>
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/notation.sgml,v 1.17 2001/10/09 18:46:00 petere Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/notation.sgml,v 1.18 2001/11/21 05:53:41 thomas Exp $
-->
<sect1 id="notation">
<title>Terminology and Notation</title>
<para>
The terms <quote>Postgres</quote> and <quote>PostgreSQL</quote> will be
The terms <quote>PostgreSQL</quote> and <quote>Postgres</quote> will be
used interchangeably to refer to the software that accompanies this
documentation.
</para>
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/Attic/odbc.sgml,v 1.27 2001/11/12 19:19:39 petere Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/Attic/odbc.sgml,v 1.28 2001/11/21 05:53:41 thomas Exp $
-->
<chapter id="odbc">
......@@ -48,7 +48,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/Attic/odbc.sgml,v 1.27 2001/11/12 19:19:39
The <acronym>ODBC</acronym> <acronym>API</acronym> matches up
on the backend to an <acronym>ODBC</acronym>-compatible data source.
This could be anything from a text file to an Oracle or
<productname>Postgres</productname> <acronym>RDBMS</acronym>.
<productname>PostgreSQL</productname> <acronym>RDBMS</acronym>.
</para>
<para>
......@@ -68,7 +68,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/Attic/odbc.sgml,v 1.27 2001/11/12 19:19:39
<para>
For example. you could have <productname>MS SQL Server</productname>
and <productname>Postgres</productname> servers that have
and <productname>PostgreSQL</productname> servers that have
exactly the same data. Using <acronym>ODBC</acronym>,
your Windows application would make exactly the
same calls and the back end data source would look the same (to the Windows
......@@ -195,9 +195,9 @@ Port=5432
<tip>
<para>
Remember that the <productname>Postgres</productname> database name is
Remember that the <productname>PostgreSQL</productname> database name is
usually a single word, without path names of any sort.
The <productname>Postgres</productname> server manages the actual access
The <productname>PostgreSQL</productname> server manages the actual access
to the database, and you need only specify the name from the client.
</para>
</tip>
......@@ -287,9 +287,9 @@ InstallDir = /opt/applix/axdata/axshlib
<para>
<quote>
If I write an application for <productname>Postgres</productname>
If I write an application for <productname>PostgreSQL</productname>
can I write it using <acronym>ODBC</acronym> calls
to the <productname>Postgres</productname> server,
to the <productname>PostgreSQL</productname> server,
or is that only when another database program
like MS SQL Server or Access needs to access the data?
</quote>
......@@ -335,9 +335,9 @@ InstallDir = /opt/applix/axdata/axshlib
<acronym>ODBC</acronym> database interface
supported on at least some platforms.
<productname>ApplixWare</productname> 4.4.2 has been
demonstrated under Linux with <productname>Postgres</productname> 7.0
demonstrated under Linux with <productname>PostgreSQL</productname> 7.0
using the <productname>psqlODBC</productname>
driver contained in the <productname>Postgres</productname> distribution.
driver contained in the <productname>PostgreSQL</productname> distribution.
</para>
<sect2>
......@@ -346,7 +346,7 @@ InstallDir = /opt/applix/axdata/axshlib
<para>
<productname>ApplixWare</productname> must be configured correctly
in order for it to
be able to access the <productname>Postgres</productname>
be able to access the <productname>PostgreSQL</productname>
<acronym>ODBC</acronym> software drivers.
</para>
......@@ -434,7 +434,7 @@ TextAsLongVarchar=0
<step performance="required">
<para>
Select the <productname>Postgres</productname> database of interest.
Select the <productname>PostgreSQL</productname> database of interest.
</para>
<substeps>
......@@ -666,7 +666,7 @@ can't load library 'libodbc.so'\n", 61) = -1 EIO (I/O error)
the sample tables that the Tutorial refers to. The ELF Macro used to
create the tables tries to use a NULL condition
on many of the database columns,
and <productname>Postgres</productname> does not currently allow this option.
and <productname>PostgreSQL</productname> does not currently allow this option.
</para>
<para>
To get around this problem, you can do the following:
......
......@@ -9,7 +9,7 @@ A description of the database file default page format.
</abstract>
<para>
This section provides an overview of the page format used by <productname>Postgres</productname>
This section provides an overview of the page format used by <productname>PostgreSQL</productname>
tables. User-defined access methods need not use this page format.
</para>
......@@ -18,12 +18,12 @@ In the following explanation, a
<firstterm>byte</firstterm>
is assumed to contain 8 bits. In addition, the term
<firstterm>item</firstterm>
refers to data that is stored in <productname>Postgres</productname> tables.
refers to data that is stored in <productname>PostgreSQL</productname> tables.
</para>
<para>
<xref linkend="page-table"> shows how pages in both normal <productname>Postgres</productname> tables
and <productname>Postgres</productname> indexes
<xref linkend="page-table"> shows how pages in both normal <productname>PostgreSQL</productname> tables
and <productname>PostgreSQL</productname> indexes
(e.g., a B-tree index) are structured.
</para>
......@@ -131,7 +131,7 @@ unallocated space. Because an item identifier is never moved until it
is freed, its index may be used to indicate the location of an item on
a page. In fact, every pointer to an item
(<firstterm>ItemPointer</firstterm>)
created by <productname>Postgres</productname> consists of a frame number and an index of an item
created by <productname>PostgreSQL</productname> consists of a frame number and an index of an item
identifier. An item identifier contains a byte-offset to the start of
an item, its length in bytes, and a set of attribute bits which affect
its interpretation.
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/perform.sgml,v 1.13 2001/10/16 01:13:44 tgl Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/perform.sgml,v 1.14 2001/11/21 05:53:41 thomas Exp $
-->
<chapter id="performance-tips">
......@@ -9,14 +9,14 @@ $Header: /cvsroot/pgsql/doc/src/sgml/perform.sgml,v 1.13 2001/10/16 01:13:44 tgl
Query performance can be affected by many things. Some of these can
be manipulated by the user, while others are fundamental to the underlying
design of the system. This chapter provides some hints about understanding
and tuning <productname>Postgres</productname> performance.
and tuning <productname>PostgreSQL</productname> performance.
</para>
<sect1 id="using-explain">
<title>Using <command>EXPLAIN</command></title>
<para>
<productname>Postgres</productname> devises a <firstterm>query
<productname>PostgreSQL</productname> devises a <firstterm>query
plan</firstterm> for each query it is given. Choosing the right
plan to match the query structure and the properties of the data
is absolutely critical for good performance. You can use the
......@@ -398,7 +398,7 @@ regression=# select attname, n_distinct, most_common_vals from pg_stats where ta
regression=#
</screen>
As of <productname>Postgres</productname> 7.2 the following columns exist
As of <productname>PostgreSQL</productname> 7.2 the following columns exist
in <structname>pg_stats</structname>:
</para>
......@@ -513,7 +513,7 @@ regression=#
<title>Controlling the Planner with Explicit JOINs</title>
<para>
Beginning with <productname>Postgres</productname> 7.1 it is possible
Beginning with <productname>PostgreSQL</productname> 7.1 it is possible
to control the query planner to some extent by using explicit JOIN
syntax. To see why this matters, we first need some background.
</para>
......@@ -531,7 +531,7 @@ SELECT * FROM a,b,c WHERE a.id = b.id AND b.ref = c.id;
be inefficient, since the full Cartesian product of A and C would have
to be formed, there being no applicable WHERE clause to allow optimization
of the join.
(All joins in the <productname>Postgres</productname> executor happen
(All joins in the <productname>PostgreSQL</productname> executor happen
between two input tables, so it's necessary to build up the result in one
or another of these fashions.) The important point is that these different
join possibilities give semantically equivalent results but may have hugely
......@@ -546,7 +546,7 @@ SELECT * FROM a,b,c WHERE a.id = b.id AND b.ref = c.id;
tables it's no longer practical to do an exhaustive search of all the
possibilities, and even for six or seven tables planning may take an
annoyingly long time. When there are too many input tables, the
<productname>Postgres</productname> planner will switch from exhaustive
<productname>PostgreSQL</productname> planner will switch from exhaustive
search to a <firstterm>genetic</firstterm> probabilistic search
through a limited number of possibilities. (The switch-over threshold is
set by the <varname>GEQO_THRESHOLD</varname> run-time
......@@ -570,7 +570,7 @@ SELECT * FROM a LEFT JOIN (b JOIN c ON (b.ref = c.id)) ON (a.id = b.id);
</para>
<para>
In <productname>Postgres</productname> 7.1, the planner treats all
In <productname>PostgreSQL</productname> 7.1, the planner treats all
explicit JOIN syntaxes as constraining the join order, even though
it is not logically necessary to make such a constraint for inner
joins. Therefore, although all of these queries give the same result:
......@@ -639,7 +639,7 @@ SELECT * FROM d LEFT JOIN
libraries may do this behind your back, in which case you need to
make sure the library does it when you want it done.)
If you allow each insertion to be committed separately,
<productname>Postgres</productname> is doing a lot of work for each
<productname>PostgreSQL</productname> is doing a lot of work for each
record added.
</para>
</sect2>
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/plperl.sgml,v 2.10 2001/09/10 21:58:47 petere Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/plperl.sgml,v 2.11 2001/11/21 05:53:41 thomas Exp $
-->
<chapter id="plperl">
......@@ -16,7 +16,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/plperl.sgml,v 2.10 2001/09/10 21:58:47 pete
<para>
PL/Perl allows you to write functions in the Perl programming
language that may be used in SQL queries as if they were built into
<productname>Postgres</productname>.
<productname>PostgreSQL</productname>.
</para>
<para>
......@@ -41,7 +41,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/plperl.sgml,v 2.10 2001/09/10 21:58:47 pete
<para>
In order to build and install PL/Perl if you are installing
<productname>Postgres</productname> from source then the
<productname>PostgreSQL</productname> from source then the
<option>--with-perl</option> must be supplied to the
<indexterm><primary><filename>configure</filename></primary></indexterm>
<filename>configure</filename> script. PL/Perl requires that, when
......@@ -69,7 +69,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/plperl.sgml,v 2.10 2001/09/10 21:58:47 pete
When you want to retry to build PL/Perl after having reinstalled
Perl, then change to the directory
<filename>src/pl/plperl</filename> in the
<productname>Postgres</productname> source tree and issue the commands
<productname>PostgreSQL</productname> source tree and issue the commands
<programlisting>
gmake clean
gmake all
......
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/plpython.sgml,v 1.6 2001/11/20 21:09:53 momjian Exp $ -->
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/plpython.sgml,v 1.7 2001/11/21 05:53:41 thomas Exp $ -->
<chapter id="plpython">
<title>PL/Python - Python Procedural Language</title>
......@@ -72,7 +72,7 @@ def __plpython_procedure_myfunc_23456():
</para>
<para>
PostgreSQL function variables are available in the global
<productname>PostgreSQL</> function variables are available in the global
<varname>args</varname> list. In the <function>myfunc</function>
example, <varname>args[0]</> contains whatever was passed in as the text
argument. For <literal>myfunc2(text, integer)</literal>, <varname>args[0]</>
......
This diff is collapsed.
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/pltcl.sgml,v 2.16 2001/11/19 03:58:24 tgl Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/pltcl.sgml,v 2.17 2001/11/21 05:53:41 thomas Exp $
-->
<chapter id="pltcl">
......@@ -15,7 +15,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/pltcl.sgml,v 2.16 2001/11/19 03:58:24 tgl E
<para>
PL/Tcl is a loadable procedural language for the
<productname>Postgres</productname> database system
<productname>PostgreSQL</productname> database system
that enables the Tcl language to be used to create functions and
trigger procedures.
</para>
......@@ -39,7 +39,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/pltcl.sgml,v 2.16 2001/11/19 03:58:24 tgl E
a few commands are available to access the database via SPI and to raise
messages via <function>elog()</>. There is no way to access internals of the
database backend or to gain OS-level access under the permissions of the
<productname>Postgres</productname> user ID, as a C function can do.
<productname>PostgreSQL</productname> user ID, as a C function can do.
Thus, any unprivileged database user may be
permitted to use this language.
</para>
......@@ -62,7 +62,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/pltcl.sgml,v 2.16 2001/11/19 03:58:24 tgl E
<para>
The shared object for the PL/Tcl and PL/TclU call handlers is
automatically built and installed in the
<productname>Postgres</productname>
<productname>PostgreSQL</productname>
library directory if Tcl/Tk support is specified
in the configuration step of the installation procedure. To install
PL/Tcl and/or PL/TclU in a particular database, use the
......@@ -76,16 +76,16 @@ $Header: /cvsroot/pgsql/doc/src/sgml/pltcl.sgml,v 2.16 2001/11/19 03:58:24 tgl E
<title>Description</title>
<sect2>
<title><productname>Postgres</productname> Functions and Tcl Procedure Names</title>
<title><productname>PostgreSQL</productname> Functions and Tcl Procedure Names</title>
<para>
In <productname>Postgres</productname>, one and the
In <productname>PostgreSQL</productname>, one and the
same function name can be used for
different functions as long as the number of arguments or their types
differ. This would collide with Tcl procedure names. To offer the same
flexibility in PL/Tcl, the internal Tcl procedure names contain the object
ID of the procedure's pg_proc row as part of their name. Thus, different
argtype versions of the same <productname>Postgres</productname>
argtype versions of the same <productname>PostgreSQL</productname>
function are different for Tcl too.
</para>
......@@ -128,7 +128,7 @@ CREATE FUNCTION tcl_max (int4, int4) RETURNS int4 AS '
type. If an attribute in the actual row
has the NULL value, it will not appear in the array! Here is
an example that defines the overpaid_2 function (as found in the
older <productname>Postgres</productname> documentation) in PL/Tcl
older <productname>PostgreSQL</productname> documentation) in PL/Tcl
<programlisting>
CREATE FUNCTION overpaid_2 (EMP) RETURNS bool AS '
......@@ -175,7 +175,7 @@ CREATE FUNCTION overpaid_2 (EMP) RETURNS bool AS '
</indexterm>
<para>
Trigger procedures are defined in <productname>Postgres</productname>
Trigger procedures are defined in <productname>PostgreSQL</productname>
as functions without
arguments and a return type of opaque. And so are they in the PL/Tcl
language.
......
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/postgres.sgml,v 1.46 2001/05/12 22:51:35 petere Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/postgres.sgml,v 1.47 2001/11/21 05:53:41 thomas Exp $
-->
<!doctype set PUBLIC "-//OASIS//DTD DocBook V3.1//EN" [
......@@ -47,11 +47,12 @@ sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-tabs-mode:nil
sgml-indent-data:t
sgml-parent-document:nil
sgml-default-dtd-file:"./reference.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:("/usr/lib/sgml/catalog")
sgml-local-catalogs:("/usr/share/sgml/catalog")
sgml-local-ecat-files:nil
End:
-->
<!--
$Header: /cvsroot/pgsql/doc/src/sgml/problems.sgml,v 2.10 2001/11/18 07:14:49 tgl Exp $
$Header: /cvsroot/pgsql/doc/src/sgml/problems.sgml,v 2.11 2001/11/21 05:53:41 thomas Exp $
-->
<sect1 id="bug-reporting">
......@@ -8,8 +8,10 @@ $Header: /cvsroot/pgsql/doc/src/sgml/problems.sgml,v 2.10 2001/11/18 07:14:49 tg
<para>
When you find a bug in <productname>PostgreSQL</productname> we want to
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 PostgreSQL will work on every
<productname>PostgreSQL</productname> more reliable because even the utmost
care cannot guarantee that every part of
<productname>PostgreSQL</productname>
will work on every
platform under every circumstance.
</para>
......@@ -259,7 +261,7 @@ $Header: /cvsroot/pgsql/doc/src/sgml/problems.sgml,v 2.10 2001/11/18 07:14:49 tg
The software package in total is called <quote>PostgreSQL</quote>,
sometimes <quote>Postgres</quote> for short. If you
are specifically talking about the backend server, mention that, do not
just say <quote>Postgres crashes</quote>. A crash of a single
just say <quote>PostgreSQL crashes</quote>. A crash of a single
backend server process is quite different from crash of the parent
<quote>postmaster</> process; please don't say <quote>the postmaster
crashed</> when you mean a single backend went down, nor vice versa.
......
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/protocol.sgml,v 1.21 2001/09/21 20:31:42 tgl Exp $ -->
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/protocol.sgml,v 1.22 2001/11/21 05:53:41 thomas Exp $ -->
<chapter id="protocol">
<title>Frontend/Backend Protocol</title>
......@@ -57,7 +57,8 @@
normally create a new child process to handle each incoming
connection. However, this is not required. In the current
implementation, a new child process is created immediately after an
incoming connection is detected. In earlier versions of PostgreSQL
incoming connection is detected. In earlier versions of
<productname>PostgreSQL</>
(7.1 and earlier), the child process was created after sending the
authentication confirmation message.
</para>
......
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/Attic/pygresql.sgml,v 1.4 2001/11/19 03:58:24 tgl Exp $ -->
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/Attic/pygresql.sgml,v 1.5 2001/11/21 05:53:41 thomas Exp $ -->
<chapter id="pygresql">
<title><application>PyGreSQL</application> - <application>Python</application> Interface</title>
......@@ -384,7 +384,7 @@ make && make install
<listitem>
<para>
<classname>pglargeobject</classname>, which handles all the accesses
to <productname>Postgres</productname> large objects, and
to <productname>PostgreSQL</productname> large objects, and
</para>
</listitem>
......
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/queries.sgml,v 1.12 2001/11/19 03:58:24 tgl Exp $ -->
<!-- $Header: /cvsroot/pgsql/doc/src/sgml/queries.sgml,v 1.13 2001/11/21 05:53:41 thomas Exp $ -->
<chapter id="queries">
<title>Queries</title>
......@@ -342,7 +342,7 @@ FROM <replaceable>table_reference</replaceable> AS <replaceable>alias</replaceab
SELECT * FROM my_table AS m WHERE my_table.a > 5;
</programlisting>
is not valid SQL syntax. What will actually happen (this is a
<productname>Postgres</productname> extension to the standard)
<productname>PostgreSQL</productname> extension to the standard)
is that an implicit
table reference is added to the FROM clause, so the query is
processed as if it were written as
......@@ -586,7 +586,7 @@ SELECT pid, p.name, (sum(s.units) * p.price) AS sales
<para>
In strict SQL, GROUP BY can only group by columns of the source
table but Postgres extends this to also allow GROUP BY to group by
table but <productname>PostgreSQL</productname> extends this to also allow GROUP BY to group by
select columns in the query select list. Grouping by value
expressions instead of simple column names is also allowed.
</para>
......@@ -598,7 +598,7 @@ SELECT <replaceable>select_list</replaceable> FROM ... <optional>WHERE ...</opti
If a table has been grouped using a GROUP BY clause, but then only
certain groups are of interest, the HAVING clause can be used,
much like a WHERE clause, to eliminate groups from a grouped
table. Postgres allows a HAVING clause to be
table. <productname>PostgreSQL</productname> allows a HAVING clause to be
used without a GROUP BY, in which case it acts like another WHERE
clause, but the point in using HAVING that way is not clear. A good
rule of thumb is that a HAVING condition should refer to the results
......@@ -865,7 +865,7 @@ SELECT a, sum(b) FROM table1 GROUP BY a ORDER BY 1;
</para>
<para>
As an extension to the SQL standard, Postgres also allows ordering
As an extension to the SQL standard, <productname>PostgreSQL</productname> also allows ordering
by arbitrary expressions:
<programlisting>
SELECT a, b FROM table1 ORDER BY a + b;
......
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment