Skip to content
Snippets Groups Projects
intro.sgml 4.5 KiB
Newer Older
<!-- doc/src/sgml/intro.sgml -->
Peter Eisentraut's avatar
Peter Eisentraut committed
<preface id="preface">
 <title>Preface</title>

 <para>
  This book is the official documentation of
  <productname>PostgreSQL</productname>.  It has been written by the
  <productname>PostgreSQL</productname> developers and other
  volunteers in parallel to the development of the
  <productname>PostgreSQL</productname> software.  It describes all
  the functionality that the current version of
  <productname>PostgreSQL</productname> officially supports.
Peter Eisentraut's avatar
Peter Eisentraut committed
 </para>

 <para>
  To make the large amount of information about
  <productname>PostgreSQL</productname> manageable, this book has been
  organized in several parts.  Each part is targeted at a different
  class of users, or at users in different stages of their
  <productname>PostgreSQL</productname> experience:
Peter Eisentraut's avatar
Peter Eisentraut committed

  <itemizedlist>
   <listitem>
    <para>
     <xref linkend="tutorial"> is an informal introduction for new users.
    </para>
   </listitem>

   <listitem>
    <para>
     <xref linkend="sql"> documents the <acronym>SQL</acronym> query
     language environment, including data types and functions, as well
     as user-level performance tuning.  Every
     <productname>PostgreSQL</> user should read this.
    </para>
   </listitem>

   <listitem>
    <para>
     <xref linkend="admin"> describes the installation and
     administration of the server.  Everyone who runs a
     <productname>PostgreSQL</productname> server, be it for private
     use or for others, should read this part.
Peter Eisentraut's avatar
Peter Eisentraut committed
    </para>
   </listitem>

   <listitem>
    <para>
     <xref linkend="client-interfaces"> describes the programming
     interfaces for <productname>PostgreSQL</productname> client
     programs.
Peter Eisentraut's avatar
Peter Eisentraut committed
    </para>
   </listitem>


   <listitem>
    <para>
     <xref linkend="server-programming"> contains information for
     advanced users about the extensibility capabilities of the
     server.  Topics include user-defined data types and
Peter Eisentraut's avatar
Peter Eisentraut committed
     functions.
    </para>
   </listitem>

   <listitem>
    <para>
     <xref linkend="reference"> contains reference information about
     SQL commands, client and server programs.  This part supports
Peter Eisentraut's avatar
Peter Eisentraut committed
     the other parts with structured information sorted by command or
     program.
    </para>
   </listitem>
     <xref linkend="internals"> contains assorted information that might be of
     use to <productname>PostgreSQL</> developers.
    </para>
   </listitem>
Peter Eisentraut's avatar
Peter Eisentraut committed
  </itemizedlist>
 </para>

 <sect1 id="intro-whatis">
  <title> What is <productname>PostgreSQL</productname>?</title>

  <para>
   <productname>PostgreSQL</productname> is an object-relational
   database management system (<acronym>ORDBMS</acronym>) based on
   <ulink url="http://db.cs.berkeley.edu/postgres.html">
   <productname>POSTGRES, Version 4.2</productname></ulink>,
   developed at the University of California at Berkeley Computer Science
Peter Eisentraut's avatar
Peter Eisentraut committed
   Department.  POSTGRES pioneered many concepts that only became
   available in some commercial database systems much later.
  </para>

  <para>
   <productname>PostgreSQL</productname> is an open-source descendant
   of this original Berkeley code.  It supports a large part of the SQL
   standard and offers many modern features:
Peter Eisentraut's avatar
Peter Eisentraut committed

   <itemizedlist spacing="compact">
    <listitem>
     <simpara>complex queries</simpara>
    </listitem>
    <listitem>
     <simpara>foreign keys</simpara>
    </listitem>
    <listitem>
     <simpara>triggers</simpara>
    </listitem>
    <listitem>
Peter Eisentraut's avatar
Peter Eisentraut committed
     <simpara>views</simpara>
Peter Eisentraut's avatar
Peter Eisentraut committed
    </listitem>
    <listitem>
     <simpara>transactional integrity</simpara>
    </listitem>
    <listitem>
     <simpara>multiversion concurrency control</simpara>
    </listitem>
   </itemizedlist>

   Also, <productname>PostgreSQL</productname> can be extended by the
   user in many ways, for example by adding new
Peter Eisentraut's avatar
Peter Eisentraut committed

   <itemizedlist spacing="compact">
    <listitem>
     <simpara>data types</simpara>
    </listitem>
    <listitem>
     <simpara>functions</simpara>
    </listitem>
    <listitem>
     <simpara>operators</simpara>
    </listitem>
    <listitem>
     <simpara>aggregate functions</simpara>
    </listitem>
    <listitem>
     <simpara>index methods</simpara>
    </listitem>
    <listitem>
     <simpara>procedural languages</simpara>
    </listitem>
   </itemizedlist>
  </para>

  <para>
   And because of the liberal license,
   <productname>PostgreSQL</productname> can be used, modified, and
   distributed by anyone free of charge for any purpose, be it
Peter Eisentraut's avatar
Peter Eisentraut committed
  </para>
 </sect1>

 &history;
 &notation;
 &info;
 &problems;

</preface>