1010alink ="#0000ff ">
1111< H1 > Frequently Asked Questions (FAQ) for PostgreSQL</ H1 >
1212
13- < P > Last updated: Mon Dec 11 17:44:33 EST 2006</ P >
13+ < P > Last updated: Mon Dec 11 17:45:54 EST 2006</ P >
1414
1515< P > Current maintainer: Bruce Momjian (< A href =
1616 "mailto:bruce@momjian.us "> bruce@momjian.us</ A > )
@@ -42,7 +42,7 @@ <H2 align="center">General Questions</H2>
4242 development team?< BR >
4343< A href ="#item1.13 "> 1.13</ A > ) How does PostgreSQL compare to other
4444< SMALL > DBMS</ SMALL > s?< BR >
45-
45+
4646
4747< H2 align ="center "> User Client Questions</ H2 >
4848< A href ="#item2.1 "> 2.1</ A > ) What interfaces are available for
@@ -51,7 +51,7 @@ <H2 align="center">User Client Questions</H2>
5151 PostgreSQL with Web pages?< BR >
5252< A href ="#item2.3 "> 2.3</ A > ) Does PostgreSQL have a graphical user
5353 interface?< BR >
54-
54+
5555
5656< H2 align ="center "> Administrative Questions</ H2 >
5757< A href ="#item3.1 "> 3.1</ A > ) How do I install PostgreSQL somewhere other
@@ -281,7 +281,7 @@ <H3 id="item1.8">1.8) How do I submit a bug report?</H3>
281281</ ul >
282282</ li >
283283</ ul >
284-
284+
285285< H3 id ="item1.9 "> 1.9) How do I find out about known bugs or
286286 missing features?</ H3 >
287287
@@ -307,7 +307,7 @@ <H3 id="item1.9">1.9) How do I find out about known bugs or
307307< li > The new feature is added to the
308308< A href ="http://www.postgresql.org/docs/faqs.TODO.html "> TODO</ A > list</ li >
309309</ ul >
310-
310+
311311< P > PostgreSQL does not use a bug tracking system because we find
312312 it more efficient to respond directly to email and keep the
313313< A href ="http://www.postgresql.org/docs/faqs.TODO.html "> TODO</ A >
@@ -318,7 +318,7 @@ <H3 id="item1.9">1.9) How do I find out about known bugs or
318318< a href ="http://www.postgresql.org/developer/sourcecode/ "> CVS</ a >
319319 log messages. Even the release notes do not list every change
320320 made to the software.</ P >
321-
321+
322322< H3 id ="item1.10 "> 1.10) What documentation is available?</ H3 >
323323
324324< P > PostgreSQL includes extensive documentation, including a large
@@ -370,7 +370,7 @@ <H3 id="item1.11">1.11) How can I learn
370370 "http://mysite.verizon.net/Graeme_Birchall/id1.html "> http://mysite.verizon.net/Graeme_Birchall/id1.html</ A >
371371</ LI >
372372</ UL >
373-
373+
374374< H3 id ="item1.12 "> 1.12) How do I submit a patch or join the development
375375 team?</ H3 >
376376
@@ -503,7 +503,7 @@ <H3 id="item3.3">3.3) How do I tune the database engine for
503503
504504< P > There are three major areas for potential performance
505505 improvement:</ P >
506-
506+
507507< DL >
508508< DT > < B > Query Changes</ B > </ DT >
509509
@@ -583,7 +583,7 @@ <H3 id="item3.6">3.6) What is the upgrade process for PostgreSQL?</H3>
583583 PostgreSQL minor releases are designed to fix only common bugs
584584 with the least risk. The community considers< i > not</ i > upgrading
585585 more risky that upgrading.</ P >
586-
586+
587587< P > Major releases (e.g. from 7.3 to 7.4) often change the internal
588588 format of system tables and data files. These changes are often complex,
589589 so we don't maintain backward compatibility for data files. A dump/reload
@@ -638,7 +638,7 @@ <H3 id="item4.2">4.2) How do I find out what tables, indexes,
638638
639639< P > There are also system tables beginning with< I > pg_</ I > that describe
640640 these too.</ P >
641-
641+
642642< P > Use< I > psql -l</ I > will list all databases.</ P >
643643
644644< P > Also try the file< I > pgsql/src/tutorial/syscat.source</ I > . It
@@ -660,7 +660,7 @@ <H3 id="item4.3">4.3) How do you change a column's data type?</H3>
660660</ PRE >
661661< P > You might then want to do< I > VACUUM FULL tab</ I > to reclaim the
662662 disk space used by the expired rows.</ P >
663-
663+
664664< H3 id ="item4.4 "> 4.4) What is the maximum size for a row, a
665665 table, and a database?</ H3 >
666666
@@ -735,7 +735,7 @@ <H3 id="item4.5">4.5) How much database disk space is required
735735
736736< P > < SMALL > NULL</ SMALL > s are stored as bitmaps, so they
737737 use very little space.</ P >
738-
738+
739739< H3 id ="item4.6 "> 4.6) Why are my queries slow? Why don't they
740740 use my indexes?</ H3 >
741741
@@ -760,7 +760,7 @@ <H3 id="item4.6">4.6) Why are my queries slow? Why don't they
760760 However,< SMALL > LIMIT</ SMALL > combined with< SMALL > ORDER BY</ SMALL >
761761 often will use an index because only a small portion of the table
762762 is returned.</ P >
763-
763+
764764< P > If you believe the optimizer is incorrect in choosing a
765765 sequential scan, use< CODE > SET enable_seqscan TO 'off'</ CODE > and
766766 run query again to see if an index scan is indeed faster.</ P >
@@ -847,7 +847,7 @@ <H3 id="item4.9">4.9) In a query, how do I detect if a field
847847 SELECT COALESCE(col1, '') || COALESCE(col2, '')
848848 FROM tab
849849</ PRE >
850-
850+
851851< P > To sort by the< SMALL > NULL</ SMALL > status, use the< SMALL > IS NULL</ SMALL >
852852 and< SMALL > IS NOT NULL</ SMALL > modifiers in your< SMALL > ORDER BY</ SMALL > clause.
853853 Things that are< I > true</ I > will sort higher than things that are< I > false</ I > ,
@@ -948,7 +948,7 @@ <H3 id="item4.11.2">4.11.2) How do I get the value of a
948948 execute("INSERT INTO person (name) VALUES ('Blaise Pascal')");
949949 new_id = execute("SELECT currval('person_id_seq')");
950950</ PRE >
951-
951+
952952< H3 id ="item4.11.3 "> 4.11.3) Doesn't< I > currval()</ I >
953953 lead to a race condition with other users?</ H3 >
954954