The code to unlink dropped relations in FinishPreparedTransaction() was
[PostgreSQL.git] / doc / src / sgml / postgres.sgml
blob86ffbe9ec2d5e1e3fe0d1347fe47b60d5dd523d4
1 <!-- $PostgreSQL$ -->
3 <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V4.2//EN" [
5 <!entity % version SYSTEM "version.sgml">
6 %version;
7 <!entity % filelist SYSTEM "filelist.sgml">
8 %filelist;
10 <!entity reference SYSTEM "reference.sgml">
14 <book id="postgres">
15 <title>PostgreSQL &version; Documentation</title>
17 <bookinfo>
18 <corpauthor>The PostgreSQL Global Development Group</corpauthor>
19 &legal;
20 </bookinfo>
22 &intro;
24 <part id="tutorial">
25 <title>Tutorial</title>
27 <partintro>
28 <para>
29 Welcome to the <productname>PostgreSQL</productname> Tutorial. The
30 following few chapters are intended to give a simple introduction
31 to <productname>PostgreSQL</productname>, relational database
32 concepts, and the SQL language to those who are new to any one of
33 these aspects. We only assume some general knowledge about how to
34 use computers. No particular Unix or programming experience is
35 required. This part is mainly intended to give you some hands-on
36 experience with important aspects of the
37 <productname>PostgreSQL</productname> system. It makes no attempt
38 to be a complete or thorough treatment of the topics it covers.
39 </para>
41 <para>
42 After you have worked through this tutorial you might want to move
43 on to reading <xref linkend="sql"> to gain a more formal knowledge
44 of the SQL language, or <xref linkend="client-interfaces"> for
45 information about developing applications for
46 <productname>PostgreSQL</productname>. Those who set up and
47 manage their own server should also read <xref linkend="admin">.
48 </para>
49 </partintro>
51 &start;
52 &query;
53 &advanced;
55 </part>
57 <part id="sql">
58 <title>The SQL Language</title>
60 <partintro>
61 <para>
62 This part describes the use of the <acronym>SQL</acronym> language
63 in <productname>PostgreSQL</productname>. We start with
64 describing the general syntax of <acronym>SQL</acronym>, then
65 explain how to create the structures to hold data, how to populate
66 the database, and how to query it. The middle part lists the
67 available data types and functions for use in
68 <acronym>SQL</acronym> commands. The rest treats several
69 aspects that are important for tuning a database for optimal
70 performance.
71 </para>
73 <para>
74 The information in this part is arranged so that a novice user can
75 follow it start to end to gain a full understanding of the topics
76 without having to refer forward too many times. The chapters are
77 intended to be self-contained, so that advanced users can read the
78 chapters individually as they choose. The information in this
79 part is presented in a narrative fashion in topical units.
80 Readers looking for a complete description of a particular command
81 should see <xref linkend="reference">.
82 </para>
84 <para>
85 Readers of this part should know how to connect to a
86 <productname>PostgreSQL</> database and issue
87 <acronym>SQL</acronym> commands. Readers that are unfamiliar with
88 these issues are encouraged to read <xref linkend="tutorial">
89 first. <acronym>SQL</acronym> commands are typically entered
90 using the <productname>PostgreSQL</> interactive terminal
91 <application>psql</application>, but other programs that have
92 similar functionality can be used as well.
93 </para>
94 </partintro>
96 &syntax;
97 &ddl;
98 &dml;
99 &queries;
100 &datatype;
101 &func;
102 &typeconv;
103 &indices;
104 &textsearch;
105 &mvcc;
106 &perform;
108 </part>
110 <part id="admin">
111 <title>Server Administration</title>
113 <partintro>
114 <para>
115 This part covers topics that are of interest to a
116 <productname>PostgreSQL</> database administrator. This includes
117 installation of the software, set up and configuration of the
118 server, management of users and databases, and maintenance tasks.
119 Anyone who runs a <productname>PostgreSQL</> server, even for
120 personal use, but especially in production, should be familiar
121 with the topics covered in this part.
122 </para>
124 <para>
125 The information in this part is arranged approximately in the
126 order in which a new user should read it. But the chapters are
127 self-contained and can be read individually as desired. The
128 information in this part is presented in a narrative fashion in
129 topical units. Readers looking for a complete description of a
130 particular command should see <xref linkend="reference">.
131 </para>
133 <para>
134 The first few chapters are written so they can be understood
135 without prerequisite knowledge, so new users who need to set
136 up their own server can begin their exploration with this part.
137 The rest of this part is about tuning and management; that material
138 assumes that the reader is familiar with the general use of
139 the <productname>PostgreSQL</> database system. Readers are
140 encouraged to look at <xref linkend="tutorial"> and <xref
141 linkend="sql"> for additional information.
142 </para>
143 </partintro>
145 &installation;
146 &installw;
147 &runtime;
148 &config;
149 &client-auth;
150 &user-manag;
151 &manage-ag;
152 &charset;
153 &maintenance;
154 &backup;
155 &high-availability;
156 &monitoring;
157 &diskusage;
158 &wal;
159 &regress;
161 </part>
163 <part id="client-interfaces">
164 <title>Client Interfaces</title>
166 <partintro>
167 <para>
168 This part describes the client programming interfaces distributed
169 with <productname>PostgreSQL</>. Each of these chapters can be
170 read independently. Note that there are many other programming
171 interfaces for client programs that are distributed separately and
172 contain their own documentation (<xref linkend="external-projects">
173 lists some of the more popular ones). Readers of this part should be
174 familiar with using <acronym>SQL</acronym> commands to manipulate
175 and query the database (see <xref linkend="sql">) and of course
176 with the programming language that the interface uses.
177 </para>
178 </partintro>
180 &libpq;
181 &lobj;
182 &ecpg;
183 &infoschema;
185 </part>
187 <part id="server-programming">
188 <title>Server Programming</title>
190 <partintro>
191 <para>
192 This part is about extending the server functionality with
193 user-defined functions, data types, triggers, etc. These are
194 advanced topics which should probably be approached only after all
195 the other user documentation about <productname>PostgreSQL</> has
196 been understood. Later chapters in this part describe the server-side
197 programming languages available in the
198 <productname>PostgreSQL</productname> distribution as well as
199 general issues concerning server-side programming languages. It
200 is essential to read at least the earlier sections of <xref
201 linkend="extend"> (covering functions) before diving into the
202 material about server-side programming languages.
203 </para>
204 </partintro>
206 &extend;
207 &trigger;
208 &rules;
210 &xplang;
211 &plsql;
212 &pltcl;
213 &plperl;
214 &plpython;
216 &spi;
218 </part>
220 &reference;
222 <part id="internals">
223 <title>Internals</title>
225 <partintro>
226 <para>
227 This part contains assorted information that might be of use to
228 <productname>PostgreSQL</> developers.
229 </para>
230 </partintro>
232 &arch-dev;
233 &catalogs;
234 &protocol;
235 &sources;
236 &nls;
237 &plhandler;
238 &geqo;
239 &indexam;
240 &gist;
241 &gin;
242 &storage;
243 &bki;
244 &planstats;
246 </part>
248 <part id="appendixes">
249 <title>Appendixes</title>
251 &errcodes;
252 &datetime;
253 &keywords;
254 &features;
255 &release;
256 &contrib;
257 &external-projects;
258 &cvs;
259 &docguide;
260 &acronyms;
262 </part>
264 &biblio;
265 &bookindex;
267 </book>