Fix xslt_process() to ensure that it inserts a NULL terminator after the
[PostgreSQL.git] / doc / src / sgml / intro.sgml
blob266cf5648f9b9d639492df090800e4eaa0172838
1 <!-- $PostgreSQL$ -->
3 <preface id="preface">
4 <title>Preface</title>
6 <para>
7 This book is the official documentation of
8 <productname>PostgreSQL</productname>. It has been written by the
9 <productname>PostgreSQL</productname> developers and other
10 volunteers in parallel to the development of the
11 <productname>PostgreSQL</productname> software. It describes all
12 the functionality that the current version of
13 <productname>PostgreSQL</productname> officially supports.
14 </para>
16 <para>
17 To make the large amount of information about
18 <productname>PostgreSQL</productname> manageable, this book has been
19 organized in several parts. Each part is targeted at a different
20 class of users, or at users in different stages of their
21 <productname>PostgreSQL</productname> experience:
23 <itemizedlist>
24 <listitem>
25 <para>
26 <xref linkend="tutorial"> is an informal introduction for new users.
27 </para>
28 </listitem>
30 <listitem>
31 <para>
32 <xref linkend="sql"> documents the <acronym>SQL</acronym> query
33 language environment, including data types and functions, as well
34 as user-level performance tuning. Every
35 <productname>PostgreSQL</> user should read this.
36 </para>
37 </listitem>
39 <listitem>
40 <para>
41 <xref linkend="admin"> describes the installation and
42 administration of the server. Everyone who runs a
43 <productname>PostgreSQL</productname> server, be it for private
44 use or for others, should read this part.
45 </para>
46 </listitem>
48 <listitem>
49 <para>
50 <xref linkend="client-interfaces"> describes the programming
51 interfaces for <productname>PostgreSQL</productname> client
52 programs.
53 </para>
54 </listitem>
57 <listitem>
58 <para>
59 <xref linkend="server-programming"> contains information for
60 advanced users about the extensibility capabilities of the
61 server. Topics include user-defined data types and
62 functions.
63 </para>
64 </listitem>
66 <listitem>
67 <para>
68 <xref linkend="reference"> contains reference information about
69 SQL commands, client and server programs. This part supports
70 the other parts with structured information sorted by command or
71 program.
72 </para>
73 </listitem>
75 <listitem>
76 <para>
77 <xref linkend="internals"> contains assorted information that might be of
78 use to <productname>PostgreSQL</> developers.
79 </para>
80 </listitem>
81 </itemizedlist>
82 </para>
84 <sect1 id="intro-whatis">
85 <title> What is <productname>PostgreSQL</productname>?</title>
87 <para>
88 <productname>PostgreSQL</productname> is an object-relational
89 database management system (<acronym>ORDBMS</acronym>) based on
90 <ulink url="http://s2k-ftp.CS.Berkeley.EDU:8000/postgres/postgres.html">
91 <productname>POSTGRES, Version 4.2</productname></ulink>,
92 developed at the University of California at Berkeley Computer Science
93 Department. POSTGRES pioneered many concepts that only became
94 available in some commercial database systems much later.
95 </para>
97 <para>
98 <productname>PostgreSQL</productname> is an open-source descendant
99 of this original Berkeley code. It supports a large part of the SQL
100 standard and offers many modern features:
102 <itemizedlist spacing="compact">
103 <listitem>
104 <simpara>complex queries</simpara>
105 </listitem>
106 <listitem>
107 <simpara>foreign keys</simpara>
108 </listitem>
109 <listitem>
110 <simpara>triggers</simpara>
111 </listitem>
112 <listitem>
113 <simpara>views</simpara>
114 </listitem>
115 <listitem>
116 <simpara>transactional integrity</simpara>
117 </listitem>
118 <listitem>
119 <simpara>multiversion concurrency control</simpara>
120 </listitem>
121 </itemizedlist>
123 Also, <productname>PostgreSQL</productname> can be extended by the
124 user in many ways, for example by adding new
126 <itemizedlist spacing="compact">
127 <listitem>
128 <simpara>data types</simpara>
129 </listitem>
130 <listitem>
131 <simpara>functions</simpara>
132 </listitem>
133 <listitem>
134 <simpara>operators</simpara>
135 </listitem>
136 <listitem>
137 <simpara>aggregate functions</simpara>
138 </listitem>
139 <listitem>
140 <simpara>index methods</simpara>
141 </listitem>
142 <listitem>
143 <simpara>procedural languages</simpara>
144 </listitem>
145 </itemizedlist>
146 </para>
148 <para>
149 And because of the liberal license,
150 <productname>PostgreSQL</productname> can be used, modified, and
151 distributed by anyone free of charge for any purpose, be it
152 private, commercial, or academic.
153 </para>
154 </sect1>
156 &history;
157 &notation;
158 &info;
159 &problems;
161 </preface>