PostgreSQL is complicated enough.
You don't need complicated prose to understand it.
PostgreSQL: Introduction and Concepts (ISBN 0-201-70331-9) is a book about the open-source database PostgreSQL. It was written by Bruce Momjian and published by Addison-Wesley. It has sold thousands of copies since its release in December of 2000. The book has been translated into German and Japanese. Here is an article reflecting on the book one year after publication.
| First Printing | |||
| Date | Page | Location | Correction |
| 2000/10/27 | 37 | table 4.6 | add ^ to '^D.*e.*f' |
| 2000/11/02 | 108 | table 9.1 | change bool to boolean |
| 2000/11/10 | xxiii | bottom | add first name for Jolly Chen |
| 2000/11/18 | 25 | footnote 2 | fix spelling of the word quote |
| First, Second, and Third Printings | |||
| Date | Page | Location | Correction |
| 2001/08/01 | 113 | table 9.3 | translate() maps character classes, not strings |
| 2001/08/01 | 113 | table 9.3 | trim(BOTH ...) doesn't use comma |
| 2003/01/27 |
201 | figure 17.12 |
Client
Number should be State Code |
| Update for PostgreSQL 7.1 | ||
| Page | Section | Change |
| 43 | 4.14 | additional SET variables, new postgresql.conf file |
| 91 | 8.2 | new subqueries in FROM clause |
| 101 | 8.3 | OUTER joins now supported using ANSI join syntax |
| 108 | 9.2 | new BIT and BIT VARYINGdata types |
| 108 | 9.2 | unlimited CHAR()/VARCHAR() length |
| 143 | 13.2 | newALTER TABLE tablename OWNER TO user |
| 143 | 13.2 | newALTER TABLE tablename ADD CONSTRAINT |
| 145 | 13.4 | inheritance now the default, new ONLY keyword |
| 223 | 20.1 | file names now created using oid, not table name |
| 227 | 20.5 | pg_dump improved, new pg_restore command |
| 230 | 20.8 | write-ahead log makes -F less important |
| Update for PostgreSQL 7.2 | ||
| Page | Section | Change |
| 133 | 11.4 | new VACUUM FULL command, VACUUM
now nonlocking |
| 79 | 7.1 | OIDs are now optional |
| 226 | 20.4 | new md5 encryption
option in pg_hba.conf |
| 226 | 20.4 | new unix domain socket authentication for some OS's |
| 229 | 20.7 |
new table statistics collector |
| 230 |
20.9 | pg_log is now pg_clog |
| 85 |
7.6 | new SERIAL8data type |
| 108 |
9.2 |
bytea now usable for
binary data storage |
| 110 | 9.2 | new TIMESTAMP WITHOUT TIMEZONE data type |
| Update for PostgreSQL 7.3 | ||
| Page | Section | Change |
| 227 | 20.4 | additional user column in pg_hba.conf |
| 110 |
9.2 | TIMESTAMP and TIME now defaults
to WITHOUT TIMEZONE |
| 229 |
20.7 | new pg_locks lock
display table |
| 26 |
4.4 |
new DEFAULT useable in INSERT |
| 169 |
15.* | new preferred COPY options syntax |
| 230 |
20.8 |
new clusterdb command |
| 108 | 9.2 |
new DOMAIN capability |
| 187 |
17.* | many interfaces moved to http://gborg.postgresql.org |
The book can be viewed in your web browser. (The PDF version is no longer available.) A copy of the SQL commands in the book is available for download.
Additional chapters to appear in the next edition:
This book has been greatly enhanced with help from the PostgreSQL user community. I have received hundreds of suggestions that I have incorporated. Many thanks to them.
This book was written using LyX. LyX uses LaTeX to generate Postscript, and ghostscript generates PDF. Addison-Wesley used my PDF file to generate film to print the book.
LyX is a powerful word processor. It has many options, like auto-numbered sections, lists, and floating figures. It lets you tag text, and appropriate font size and spacing are automatically generated when printed. I have some tips regarding the use of LyX.
Please send any comments to Bruce Momjian.