From: Thomas G. Lockhart Date: Wed, 26 May 1999 17:30:30 +0000 (+0000) Subject: Add chapters on CVS access, MVCC, SQL theory to the docs. X-Git-Url: http://waps.l3s.uni-hannover.de/gitweb/?a=commitdiff_plain;h=196f5c0c31b5b422794d5bd4f0a5708b2df14f2f;p=users%2Fbernd%2Fpostgres.git Add chapters on CVS access, MVCC, SQL theory to the docs. Add an appendix with more details on date/time attributes and handling. Update most references to Postgres version numbers to 6.5, *except* for the porting list which will require a report from a successful installation to be updated. --- diff --git a/doc/src/sgml/admin.sgml b/doc/src/sgml/admin.sgml index 76e910145e..0ca9752af9 100644 --- a/doc/src/sgml/admin.sgml +++ b/doc/src/sgml/admin.sgml @@ -6,6 +6,14 @@ Derived from postgres.sgml. - thomas 1998-10-27 $Log: admin.sgml,v $ +Revision 1.13 1999/05/20 05:39:25 thomas +Rearrange and consolidate the Admin Guide. +Add reference pages for utilities and remove standalone chapters for same. +Add material for an appendix on date/time properties, but not yet + integrated with the User's Guide. +Break up the former chapter on pg_options + into Admin and Programmer's Guides. + Revision 1.12 1999/05/12 07:32:42 thomas Include mention of CASE, COALESCE, and IFNULL. Add date/time parsing procedure (perhaps should be in appendix). @@ -65,7 +73,7 @@ Bigger updates to the installation instructions (install and config). PostgreSQL Administrator's Guide - Covering v6.4 for general release + Covering v6.5 for general release The PostgreSQL Development Team @@ -88,12 +96,12 @@ Bigger updates to the installation instructions (install and config). TGL --> - (last updated 1999-05-19) + (last updated 1999-06-01) - PostgreSQL is copyright (©) 1998-9 + PostgreSQL is © 1998-9 by the Postgres Global Development Group. diff --git a/doc/src/sgml/biblio.sgml b/doc/src/sgml/biblio.sgml index 2e747ecbb2..0427b10efe 100644 --- a/doc/src/sgml/biblio.sgml +++ b/doc/src/sgml/biblio.sgml @@ -98,6 +98,39 @@ + + An Introduction to Database Systems + + + Date, 1994 + + 6 + + + C. J. + Date + + + 1 + 1994 + + Addison-Wesley + + + 1994 + Addison-Wesley Longman, Inc. + + + + + + @@ -135,6 +168,38 @@ --> </biblioentry> + <biblioentry> +<!-- +<BIBLIOMISC>‐</BIBLIOMISC> + +<BOOKBIBLIO ID="ULL88"> +--> + <title id="ULL88-full"> + Principles of Database and Knowledge + + + Base Systems + + + Ullman, 1988 + + + + Jeffrey D. + Ullman + + + 1 + + + Computer Science Press + + + + 1988 + + + diff --git a/doc/src/sgml/cvs.sgml b/doc/src/sgml/cvs.sgml index 38e4c2ace2..bdd092e3bf 100644 --- a/doc/src/sgml/cvs.sgml +++ b/doc/src/sgml/cvs.sgml @@ -4,6 +4,10 @@ CVS code repository Thomas Lockhart $Log: cvs.sgml,v $ +Revision 1.5 1999/05/22 02:27:23 thomas +Finish initial markup of cvs.sgml, and include it in the programmer's guide + and the integrated doc. Clean up other markup. + Revision 1.4 1999/04/06 15:38:10 thomas Start indenting markup. No text changes. @@ -48,7 +52,7 @@ Not yet included in a document (should go in the developer's doc?). - At least two options, + At least two methods, anonymous CVS and CVSup, are available to pull the CVS code tree from the Postgres server to your local machine. @@ -492,7 +496,7 @@ pgsql <productname>CVSup</productname> Installation from Binaries - You can instead use pre-built binaries + You can use pre-built binaries if you have a platform for which binaries are posted on the Postgres ftp site, @@ -513,7 +517,7 @@ pgsql At the time of writing, binaries are available for Alpha/Tru64, ix86/xBSD, - HPPA/HPUX-10.20, and MIPS/irix. + HPPA/HPUX-10.20, MIPS/irix, ix86/linux-libc5, ix86/linux-glibc, Sparc/Solaris, and Sparc/SunOS. @@ -536,7 +540,7 @@ pgsql If you have another platform, check for and download the appropriate binary from - the Postgres ftp site, + the Postgres ftp site. diff --git a/doc/src/sgml/datatype.sgml b/doc/src/sgml/datatype.sgml index 5cf23ee7d7..70352ca85f 100644 --- a/doc/src/sgml/datatype.sgml +++ b/doc/src/sgml/datatype.sgml @@ -842,15 +842,15 @@ on session startup. - -For Postgres v6.4 (and earlier) -the default date/time style is -"non-European traditional Postgres". -In future releases, the default may become "ISO" (compatible with ISO-8601), -which alleviates date specification ambiguities and Y2K collation problems. - + + For Postgres v6.4 (and earlier) + the default date/time style is + "non-European traditional Postgres". + In future releases, the default may become "ISO" (compatible with ISO-8601), + which alleviates date specification ambiguities and Y2K collation problems. + - + Calendar @@ -858,7 +858,7 @@ which alleviates date specification ambiguities and Y2K collation problems. Postgres uses Julian dates for all date/time calculations. They have the nice property of correctly - predicting/calculating any date more recent than something like 4013BC + predicting/calculating any date more recent than 4713BC to far into the future, using the assumption that the length of the year is 365.2425 days. @@ -1279,391 +1279,9 @@ which alleviates date specification ambiguities and Y2K collation problems. - - <productname>Postgres</productname> Recognized Time Zones - Time Zones - - - - Time Zone - Offset from UTC - Description - - - - - NZDT - +13:00 - New Zealand Daylight Time - - - IDLE - +12:00 - International Date Line, East - - - NZST - +12:00 - New Zealand Std Time - - - NZT - +12:00 - New Zealand Time - - - AESST - +11:00 - Australia Eastern Summer Std Time - - - ACSST - +10:30 - Central Australia Summer Std Time - - - CADT - +10:30 - Central Australia Daylight Savings Time - - - SADT - +10:30 - South Australian Daylight Time - - - AEST - +10:00 - Australia Eastern Std Time - - - EAST - +10:00 - East Australian Std Time - - - GST - +10:00 - Guam Std Time, USSR Zone 9 - - - LIGT - +10:00 - Melbourne, Australia - - - ACST - +09:30 - Central Australia Std Time - - - CAST - +09:30 - Central Australia Std Time - - - SAT - +9:30 - South Australian Std Time - - - AWSST - +9:00 - Australia Western Summer Std Time - - - JST - +9:00 - Japan Std Time,USSR Zone 8 - - - KST - +9:00 - Korea Standard Time - - - WDT - +9:00 - West Australian Daylight Time - - - MT - +8:30 - Moluccas Time - - - AWST - +8:00 - Australia Western Std Time - - - CCT - +8:00 - China Coastal Time - - - WADT - +8:00 - West Australian Daylight Time - - - WST - +8:00 - West Australian Std Time - - - JT - +7:30 - Java Time - - - WAST - +7:00 - West Australian Std Time - - - IT - +3:30 - Iran Time - - - BT - +3:00 - Baghdad Time - - - EETDST - +3:00 - Eastern Europe Daylight Savings Time - - - CETDST - +2:00 - Central European Daylight Savings Time - - - EET - +2:00 - Eastern Europe, USSR Zone 1 - - - FWT - +2:00 - French Winter Time - - - IST - +2:00 - Israel Std Time - - - MEST - +2:00 - Middle Europe Summer Time - - - METDST - +2:00 - Middle Europe Daylight Time - - - SST - +2:00 - Swedish Summer Time - - - BST - +1:00 - British Summer Time - - - CET - +1:00 - Central European Time - - - DNT - +1:00 - Dansk Normal Tid - - - DST - +1:00 - Dansk Standard Time (?) - - - FST - +1:00 - French Summer Time - - - MET - +1:00 - Middle Europe Time - - - MEWT - +1:00 - Middle Europe Winter Time - - - MEZ - +1:00 - Middle Europe Zone - - - NOR - +1:00 - Norway Standard Time - - - SET - +1:00 - Seychelles Time - - - SWT - +1:00 - Swedish Winter Time - - - WETDST - +1:00 - Western Europe Daylight Savings Time - - - GMT - 0:00 - Greenwish Mean Time - - - WET - 0:00 - Western Europe - - - WAT - -1:00 - West Africa Time - - - NDT - -2:30 - Newfoundland Daylight Time - - - ADT - -03:00 - Atlantic Daylight Time - - - NFT - -3:30 - Newfoundland Standard Time - - - NST - -3:30 - Newfoundland Standard Time - - - AST - -4:00 - Atlantic Std Time (Canada) - - - EDT - -4:00 - Eastern Daylight Time - - - ZP4 - -4:00 - GMT +4 hours - - - CDT - -5:00 - Central Daylight Time - - - EST - -5:00 - Eastern Standard Time - - - ZP5 - -5:00 - GMT +5 hours - - - CST - -6:00 - Central Std Time - - - MDT - -6:00 - Mountain Daylight Time - - - ZP6 - -6:00 - GMT +6 hours - - - MST - -7:00 - Mountain Standard Time - - - PDT - -7:00 - Pacific Daylight Time - - - PST - -8:00 - Pacific Std Time - - - YDT - -8:00 - Yukon Daylight Time - - - HDT - -9:00 - Hawaii/Alaska Daylight Time - - - YST - -9:00 - Yukon Standard Time - - - AHST - -10:00 - Alaska-Hawaii Std Time - - - CAT - -10:00 - Central Alaska Time - - - NT - -11:00 - Nome Time - - - IDLW - -12:00 - International Date Line, West - - - -
+ See + for details on time zones recognized by Postgres. + If the compiler option USE_AUSTRALIAN_RULES is set @@ -1671,7 +1289,7 @@ which alleviates date specification ambiguities and Y2K collation problems. which has an offset of +10:00 hours from UTC. -
+ Australian time zones and their naming variants @@ -1679,165 +1297,6 @@ which alleviates date specification ambiguities and Y2K collation problems. Postgres time zone lookup table. - - Date/Time Input Interpretation - - - The date/time types are all decoded using a common set of routines. - - - - - Break the input string into tokens and categorize each token as - a string, time, time zone, or number. - - - - - - If the token contains a colon (":"), this is a time string. - - - - - - If the token contains a dash ("-"), slash ("/"), or dot ("."), - this is a date string which may have a text month. - - - - - - If the token is numeric only, then it is either a single field - or an ISO-8601 concatenated date (e.g. "19990113" for January 13, 1999) - or time (e.g. 141516 for 14:15:16). - - - - - If the token starts with a plus ("+") or minus ("-"), - then it is either a time zone or a special field. - - - - - - - - If the token is a text string, match up with possible strings. - - - - - - Do a binary-search table lookup for the token - as either a special string (e.g. today), - day (e.g. Thursday), - month (e.g. January), or noise word (e.g. on). - - - Set field values and bit mask for fields. - For example, set year, month, day for today, and additionally - hour, minute, second for now. - - - - - - If not found, do a similar binary-search table lookup to match - the token with a time zone. - - - - - - If not found, throw an error. - - - - - - - - The token is a number or number field. - If there are more than 4 digits, - and if no other date fields have been previously read, then interpret - as a "concatenated date" (e.g. 19990118). - - - - - - If there are more than 4 digits, - and if no other date fields have been previously read, then interpret - as a "concatenated date" (e.g. 19990118). - - - - - - If three digits and a year has already been decoded, then interpret as day of year. - - - - - - If longer than two digits, then interpret as a year. - - - - - - If in European date mode, and if the day field has not yet been read, - and if the value is less than or equal to 31, then interpret as a day. - - - - - - If in non-European (US) date mode, and if the month field has not yet been read, - and if the value is less than or equal to 12, then interpret as a month. - - - - - - If the day field has not yet been read, - and if the value is less than or equal to 31, then interpret as a month. - - - - - - If the month field has not yet been read, - and if the value is less than or equal to 12, then interpret as a month. - - - - - - Otherwise, interpret as a year. - - - - - - - - If BC has been specified, negate the year and offset by one - (there is no year zero in the Gregorian calendar). - - - - - - If BC was not specified, and if the year field was two digits in length, then - adjust the year to 4 digits. If the field was less than 70, then add 2000; - otherwise, add 1900. - - - - diff --git a/doc/src/sgml/datetime.sgml b/doc/src/sgml/datetime.sgml index 302497a57f..aad88e9f40 100644 --- a/doc/src/sgml/datetime.sgml +++ b/doc/src/sgml/datetime.sgml @@ -2,11 +2,15 @@ $Header$ Date/time details -$Log$ +$Log: datetime.sgml,v $ +Revision 2.2 1999/05/22 02:27:23 thomas +Finish initial markup of cvs.sgml, and include it in the programmer's guide + and the integrated doc. Clean up other markup. + --> - - Date/Time Support + + Date/Time Support Time Zones diff --git a/doc/src/sgml/installation.sgml b/doc/src/sgml/installation.sgml index daaae1ad4b..6658fda382 100644 --- a/doc/src/sgml/installation.sgml +++ b/doc/src/sgml/installation.sgml @@ -5,6 +5,10 @@ Postgres quick Installation Guide. - thomas 1998-10-26 $Log: installation.sgml,v $ +Revision 1.3 1998/11/02 15:53:02 thomas +Move configuration info to after installation procedure. +Include only the current release in the release notes section. + Revision 1.2 1998/10/30 19:37:00 thomas Minor editing and markup changes as a result of preparing the Postscript documentation for v6.4. @@ -46,7 +50,7 @@ First cut at standalone installation guide to replace INSTALL text source. PostgreSQL Installation Guide - Covering v6.4 for general release + Covering v6.5 for general release The PostgreSQL Development Team @@ -69,12 +73,12 @@ First cut at standalone installation guide to replace INSTALL text source. TGL --> - (last updated 1998-02-23) + (last updated 1999-06-01) -PostgreSQL is copyright (C) 1998 +PostgreSQL is © 1998-9 by the Postgres Global Development Group. diff --git a/doc/src/sgml/ports.sgml b/doc/src/sgml/ports.sgml index c8bad8ec6f..988a5cb2b0 100644 --- a/doc/src/sgml/ports.sgml +++ b/doc/src/sgml/ports.sgml @@ -1,327 +1,327 @@ - -Ports + + Ports - -This manual describes version 6.5 of Postgres. -The Postgres developer community has -compiled and tested Postgres on a -number of platforms. Check -the web site -for the latest information. - + + This manual describes version 6.5 of Postgres. + The Postgres developer community has + compiled and tested Postgres on a + number of platforms. Check + the web site + for the latest information. + - -Currently Supported Platforms + + Currently Supported Platforms - -At the time of publication, the following platforms have been tested: + + At the time of publication, the following platforms have been tested: - -Supported Platforms - - - - OS - Processor - Version - Reported - Remarks - - - - - AIX 4.2.1 - RS6000 - v6.4 - 1998-10-27 - (Andreas Zeugswetter) - - - BSDI - x86 - v6.4 - 1998-10-25 - (Bruce Momjian - - - FreeBSD 2.2.x-3.x - x86 - v6.4 - 1998-10-26 - (Tatsuo Ishii, - Marc Fournier) - - - DGUX 5.4R4.11 - m88k - v6.3 - 1998-03-01 - v6.4 probably OK. Needs new maintainer. - (Brian E Gallew) - - - Digital Unix 4.0 - Alpha - v6.4 - 1998-10-29 - Minor patchable problems - (Pedro J. Lobo) - - - HPUX - PA-RISC - v6.4 - 1998-10-25 - Both 9.0x and 10.20 - (Tom Lane, - Stan Brown) - - - IRIX 6.5 - MIPS - v6.4 - 1998-12-29 - IRIX 5.x is different - (Mark Dalphin) - - - linux 2.0.x - Alpha - v6.3.2 - 1998-04-16 - Mostly successful. Needs work for v6.4. - (Ryan Kirkpatrick) - - - linux 2.0.x/libc5 - x86 - v6.4 - 1998-10-27 - (Thomas Lockhart) - - - linux 2.0.x/glibc2 - x86 - v6.4 - 1998-10-25 - (Oliver Elphick, - Taral) - - - linux 2.0.x - MIPS - v6.4 - 1998-12-16 - Cobalt Qube - (Tatsuo Ishii) - - - linux 2.0.x - Sparc - v6.4 - 1998-10-25 - (Tom Szybist) - - - linuxPPC 2.1.24 - PPC603e - v6.4 - 1998-10-26 - Powerbook 2400c - (Tatsuo Ishii) - - - mklinux DR3 - PPC750 - v6.4 - 1998-09-16 - PowerMac 7600 - (Tatsuo Ishii) - - - NetBSD/i386 1.3.2 - x86 - v6.4 - 1998-10-25 - (Brook Milligan) - - - NetBSD - m68k - v6.4.2 - 1998-12-28 - Mac SE/30 +
+ Supported Platforms + + + + OS + Processor + Version + Reported + Remarks + + + + + AIX 4.2.1 + RS6000 + v6.4 + 1998-10-27 + (Andreas Zeugswetter) + + + BSDI + x86 + v6.5 + 1999-05-25 + (Bruce Momjian + + + FreeBSD 2.2.x-3.x + x86 + v6.5 + 1999-05-25 + (Tatsuo Ishii, + Marc Fournier) + + + DGUX 5.4R4.11 + m88k + v6.3 + 1998-03-01 + v6.4 probably OK. Needs new maintainer. + (Brian E Gallew) + + + Digital Unix 4.0 + Alpha + v6.4 + 1998-10-29 + Minor patchable problems + (Pedro J. Lobo) + + + HPUX + PA-RISC + v6.4 + 1998-10-25 + Both 9.0x and 10.20 + (Tom Lane, + Stan Brown) + + + IRIX 6.5 + MIPS + v6.4 + 1998-12-29 + IRIX 5.x is different + (Mark Dalphin) + + + linux 2.0.x + Alpha + v6.3.2 + 1998-04-16 + Mostly successful. Needs work for v6.4. + (Ryan Kirkpatrick) + + + linux 2.0.x/libc5 + x86 + v6.4 + 1998-10-27 + (Thomas Lockhart) + + + linux 2.0.x/glibc2 + x86 + v6.4 + 1999-05-24 + (Thomas Lockhart) + + + linux 2.0.x + MIPS + v6.4 + 1998-12-16 + Cobalt Qube + (Tatsuo Ishii) + + + linux 2.0.x + Sparc + v6.4 + 1998-10-25 + (Tom Szybist) + + + linuxPPC 2.1.24 + PPC603e + v6.4 + 1998-10-26 + Powerbook 2400c + (Tatsuo Ishii) + + + mklinux DR3 + PPC750 + v6.4 + 1998-09-16 + PowerMac 7600 + (Tatsuo Ishii) + + + NetBSD + arm32 + v6.5 + 1999-04-14 + (Andrew McMurry) + + + NetBSD/i386 1.3.2 + x86 + v6.4 + 1998-10-25 + (Brook Milligan) + + + NetBSD + m68k + v6.4.2 + 1998-12-28 + Mac SE/30 (Mr. Mutsuki Nakajima, - Tatsuo Ishii) - - - NetBSD-current - NS32532 - v6.4 - 1998-10-27 - small problems in date/time math - (Jon Buller) - - - NetBSD/sparc 1.3H - Sparc - v6.4 - 1998-10-27 - (Tom I Helbekkmo) - - - NetBSD 1.3 - VAX - v6.3 - 1998-03-01 - (Tom I Helbekkmo) - - - SCO UnixWare 2.x - x86 - v6.3 - 1998-03-01 - aka UNIVEL - (Billy G. Allie) - - - SCO UnixWare 7 - x86 - v6.4 - 1998-10-04 - (Billy G. Allie) - - - Solaris - x86 - v6.4 - 1998-10-28 - (Marc Fournier) - - - Solaris 2.6-2.7 - Sparc - v6.4 - 1998-10-28 - (Tom Szybist, - Frank Ridderbusch) - - - SunOS 4.1.4 - Sparc - v6.3 - 1998-03-01 - Patches submitted - (Tatsuo Ishii) - - - SVR4 - MIPS - v6.4 - 1998-10-28 - No 64-bit int compiler support - (Frank Ridderbusch) - - - Windows - x86 - v6.4 - 1999-01-06 - Client-side libraries or ODBC/JDBC. No server yet. - (Magnus Hagander - - - Windows NT - x86 - v6.4 - 1998-10-08 - Working with the Cygwin library. - (Horak Daniel) - - - -
-
+ Tatsuo Ishii) + + + NetBSD-current + NS32532 + v6.4 + 1998-10-27 + small problems in date/time math + (Jon Buller) + + + NetBSD/sparc 1.3H + Sparc + v6.4 + 1998-10-27 + (Tom I Helbekkmo) + + + NetBSD 1.3 + VAX + v6.3 + 1998-03-01 + (Tom I Helbekkmo) + + + SCO OpenServer 5 + x86 + v6.5 + 1999-05-25 + (Andrew Merrill) + + + SCO UnixWare 7 + x86 + v6.5 + 1999-05-25 + (Andrew Merrill) + + + Solaris + x86 + v6.4 + 1998-10-28 + (Marc Fournier) + + + Solaris 2.6-2.7 + Sparc + v6.4 + 1998-10-28 + (Tom Szybist, + Frank Ridderbusch) + + + SunOS 4.1.4 + Sparc + v6.3 + 1998-03-01 + Patches submitted + (Tatsuo Ishii) + + + SVR4 + MIPS + v6.4 + 1998-10-28 + No 64-bit int compiler support + (Frank Ridderbusch) + + + Windows + x86 + v6.4 + 1999-01-06 + Client-side libraries or ODBC/JDBC. No server yet. + (Magnus Hagander + + + Windows NT + x86 + v6.4 + 1998-10-08 + Working with the Cygwin library. + (Horak Daniel) + + + + +
- -Platforms listed for v6.3.x should also work with v6.4, but we did not receive -confirmation of such at the time this list was compiled. - - - -For Windows NT, -the server-side port of Postgres has recently been -accomplished. The Cygnus library is required to compile it. - - -
+ + Platforms listed for v6.3.x and v6.4.x should also work with v6.5, + but we did not receive explicit confirmation of such at the time this + list was compiled. + + + + For Windows NT, + the server-side port of Postgres has recently been + accomplished. The Cygnus library is required to compile it. + + +
- -Unsupported Platforms + + Unsupported Platforms - -There are a few platforms which have been attempted and which have been -reported to not work with the standard distribution. -Others listed here do not provide sufficient library support for an attempt. + + There are a few platforms which have been attempted and which have been + reported to not work with the standard distribution. + Others listed here do not provide sufficient library support for an attempt. - -Possibly Incompatible Platforms -Incompatibles - - - - OS - Processor - Version - Reported - Remarks - - - - - MacOS - all - v6.3 - 1998-03-01 - Not library compatible; use ODBC/JDBC - - - NetBSD - arm32 - v6.3 - 1998-03-01 - Not yet working (Dave Millen) - - - NextStep - x86 - v6.x - 1998-03-01 - Client-only support; v1.0.9 worked with patches (David Wetzel) - - - SVR4 4.4 - m88k - v6.2.1 - 1998-03-01 - Confirmed with patching; v6.4.x will need TAS spinlock code - (Doug Winterburn) - - - Ultrix - MIPS,VAX? - v6.x - 1998-03-01 - No recent reports; obsolete? - - - -
-
+ + Possibly Incompatible Platforms + Incompatibles + + + + OS + Processor + Version + Reported + Remarks + + + + + MacOS + all + v6.3 + 1998-03-01 + Not library compatible; use ODBC/JDBC + + + NextStep + x86 + v6.x + 1998-03-01 + Client-only support; v1.0.9 worked with patches (David Wetzel) + + + SVR4 4.4 + m88k + v6.2.1 + 1998-03-01 + Confirmed with patching; v6.4.x will need TAS spinlock code + (Doug Winterburn) + + + Ultrix + MIPS,VAX? + v6.x + 1998-03-01 + No recent reports; obsolete? + + + +
+
-
+
-
+
@@ -152,6 +158,7 @@ Move SQL reference pages up into the User's Guide. + @@ -189,12 +196,12 @@ Move SQL reference pages up into the User's Guide. TGL --> - (last updated 1998-05-19) + (last updated 1999-06-01) - PostgreSQL is copyright (C) 1998 + PostgreSQL is © 1998-9 by the Postgres Global Development Group. @@ -251,19 +258,20 @@ Your name here... - &sql; - &syntax; - &datatype; - &oper; - &func; - &typeconv; - &keys; - &array; - &inherit; - &environ; - &manage; - &storage; - &commands; + &sql; + &syntax; + &datatype; + &oper; + &func; + &typeconv; + &keys; + &array; + &inherit; + &mvcc; + &environ; + &manage; + &storage; + &commands; @@ -281,6 +289,7 @@ Your name here... &runtime; &security; &start-ag; + &trouble; &recovery; ®ress; &release; @@ -352,8 +361,10 @@ Your name here... Additional related information. - &datetime; - &docguide; + + &datetime; + &cvs; + &docguide; diff --git a/doc/src/sgml/programmer.sgml b/doc/src/sgml/programmer.sgml index a88f8f89be..2c3850a277 100644 --- a/doc/src/sgml/programmer.sgml +++ b/doc/src/sgml/programmer.sgml @@ -5,6 +5,10 @@ Postgres Programmer's Guide. - thomas 1998-10-27 $Log: programmer.sgml,v $ +Revision 1.15 1999/05/22 02:27:24 thomas +Finish initial markup of cvs.sgml, and include it in the programmer's guide + and the integrated doc. Clean up other markup. + Revision 1.14 1999/05/20 05:39:27 thomas Rearrange and consolidate the Admin Guide. Add reference pages for utilities and remove standalone chapters for same. @@ -132,12 +136,12 @@ Bigger updates to the installation instructions (install and config). TGL --> - (last updated 1999-05-19) + (last updated 1999-06-01) - PostgreSQL is copyright (©) 1998-9 + PostgreSQL is © 1998-9 by the Postgres Global Development Group. diff --git a/doc/src/sgml/reference.sgml b/doc/src/sgml/reference.sgml index 53faf61f8a..e642968a38 100644 --- a/doc/src/sgml/reference.sgml +++ b/doc/src/sgml/reference.sgml @@ -5,6 +5,11 @@ Postgres User's Reference documentation. - thomas 1998-08-31 $Log: reference.sgml,v $ +Revision 1.5 1998/10/31 09:36:37 thomas +Cleanup for v6.4 release. +Make new file current.sgml to hold release info for the current release. + Should be moved to release.sgml before filling with next release info. + Revision 1.4 1998/10/30 19:37:12 thomas Minor editing and markup changes as a result of preparing the Postscript documentation for v6.4. @@ -27,7 +32,7 @@ Bigger updates to the installation instructions (install and config). PostgreSQL Reference Manual - Covering v6.4 for general release + Covering v6.5 for general release @@ -64,12 +69,12 @@ Bigger updates to the installation instructions (install and config). --> - (last updated 1998-08-31) + (last updated 1999-06-01) -PostgreSQL is copyright (C) 1998 +PostgreSQL is © 1998-9 by the Postgres Global Development Group. diff --git a/doc/src/sgml/sql.sgml b/doc/src/sgml/sql.sgml index 8026e4a7c0..ecefb2696f 100644 --- a/doc/src/sgml/sql.sgml +++ b/doc/src/sgml/sql.sgml @@ -88,9 +88,9 @@ language. That means it is based on the relational data model first published by E.F. Codd in - 1970. We will give a formal description of the relational model in - section - + 1970. We will give a formal description of the relational model + later (in + ) but first we want to have a look at it from a more intuitive point of view. @@ -101,7 +101,7 @@ A table consists of rows and columns where each row represents a record and each column represents an attribute of the records contained in the table. - Figure + shows an example of a database consisting of three tables: @@ -127,6 +127,7 @@ + The Suppliers and Parts Database @@ -162,7 +163,7 @@
- Formal Notion of the Relational Data Model + Relational Data Model Formalities The mathematical concept underlying the relational model is the @@ -288,7 +289,7 @@ attributes are taken from. We often write a relation scheme as Di, for each attribute Ai, - 1 <= i <= k, + 1 <= i <= k, where the values of the attributes are taken from. We often write a relation scheme as R(A1, @@ -325,11 +326,11 @@ attributes are taken from. We often write a relation scheme as integers. We define this by assigning a data type to each attribute. The type of SNAME will be VARCHAR(20) (this is the SQL type - for character strings of length <= 20), + for character strings of length <= 20), the type of SNO will be INTEGER. With the assignment of a data type we also have selected a domain for an attribute. The domain of SNAME is the set of all - character strings of length <= 20, + character strings of length <= 20, the domain of SNO is the set of all integer numbers. @@ -337,11 +338,10 @@ attributes are taken from. We often write a relation scheme as - Operations in the Relational Data - Model + Operations in the Relational Data Model - In + In the previous section () we defined the mathematical notion of the relational model. Now we know how the data can be stored using a relational data model but we do not know what to do with all these @@ -483,8 +483,8 @@ attributes are taken from. We often write a relation scheme as projecting out the duplicate column. - - An Inner Join + + An Inner Join Let's have a look at the tables that are produced by evaluating the steps @@ -600,36 +600,41 @@ tr(A,B)=t∧tr(C,D)=t For a more detailed description and definition of the relational - algebra refer to ullman or - date86. + algebra refer to [] or + []. - - Recall that we formulated all those relational operators to be able to - retrieve data from the database. Let's return to our example of - section - where someone wanted to know the names of all - suppliers that sell the part Screw. - This question can be answered - using relational algebra by the following operation: - - πSUPPLIER.SNAMEPART.PNAME='Screw'(SUPPLIER ∏ SELLS ∏ PART)) + + A Query Using Relational Algebra + + Recall that we formulated all those relational operators to be able to + retrieve data from the database. Let's return to our example from + the previous + section () + where someone wanted to know the names of all + suppliers that sell the part Screw. + This question can be answered + using relational algebra by the following operation: - + SUPPLIER.SNAMEPART.PNAME='Screw'(SUPPLIER ∏ SELLS ∏ PART)) + + - - We call such an operation a query. If we evaluate the above query - against the tables from figure - (The suppliers and - parts database) we will obtain the following result: + + We call such an operation a query. If we evaluate the above query + against the our example tables + () + we will obtain the following result: - + SNAME ------- Smith Adams - - + + +
@@ -662,8 +667,10 @@ tr(A,B)=t∧tr(C,D)=t We want to discuss the tuple relational calculus only because it is the one underlying the most relational languages. For a detailed discussion on DRC (and also - TRC) see date86 or - ullman. + TRC) see + [] + or + []. @@ -686,18 +693,19 @@ tr(A,B)=t∧tr(C,D)=t using TRC we formulate the following query: + {x(SNAME) ∣ x ∈ SUPPLIER ∧ \nonumber ∃ y ∈ SELLS ∃ z ∈ PART (y(SNO)=x(SNO) ∧ \nonumber z(PNO)=y(PNO) ∧ \nonumber z(PNAME)='Screw')} \nonumber + - Evaluating the query against the tables from figure + Evaluating the query against the tables from - (The suppliers and parts database) again leads to the same result - as in example + as in . @@ -715,8 +723,9 @@ tr(A,B)=t∧tr(C,D)=t algorithm) by which an arbitrary expression of the relational calculus can be reduced to a semantically equivalent expression of relational algebra. For a more detailed discussion on that refer to - date86 and - ullman. + [] + and + []. @@ -733,7 +742,8 @@ tr(A,B)=t∧tr(C,D)=t The <acronym>SQL</acronym> Language - As most modern relational languages SQL is based on the tuple + As is the case with most modern relational languages, + SQL is based on the tuple relational calculus. As a result every query that can be formulated using the tuple relational calculus (or equivalently, relational algebra) can also be formulated using SQL. There are, however, @@ -781,7 +791,7 @@ tr(A,B)=t∧tr(C,D)=t - Select + Select The most often used command in SQL is the @@ -806,7 +816,7 @@ tr(A,B)=t∧tr(C,D)=t Now we will illustrate the complex syntax of the SELECT statement with various examples. The tables used for the examples are defined in - figure (The suppliers and parts database). + . @@ -816,7 +826,7 @@ tr(A,B)=t∧tr(C,D)=t Here are some simple examples using a SELECT statement: - Simple Query with Qualification + Simple Query with Qualification To retrieve all tuples from table PART where the attribute PRICE is greater than 10 we formulate the following query: @@ -858,8 +868,7 @@ tr(A,B)=t∧tr(C,D)=t Note that the SQL SELECT corresponds to the "projection" in relational algebra not to the "selection" - (see section - (Relational Algebra). + (see for more details). @@ -953,7 +962,7 @@ tr(A,B)=t∧tr(C,D)=t because there are common named attributes (SNO and PNO) among the relations. Now we can distinguish between the common named attributes by simply prefixing the attribute name with the alias name followed by - a dot. The join is calculated in the same way as shown in example + a dot. The join is calculated in the same way as shown in . First the Cartesian product @@ -979,7 +988,7 @@ tr(A,B)=t∧tr(C,D)=t section). - Aggregates + Aggregates If we want to know the average cost of all parts in table PART we use @@ -1048,7 +1057,7 @@ tr(A,B)=t∧tr(C,D)=t A1, ⃛, Ak. - Aggregates + Aggregates If we want to know how many parts are sold by every supplier we formulate the query: @@ -1143,7 +1152,7 @@ tr(A,B)=t∧tr(C,D)=t clause. - Having + Having If we want only those suppliers selling more than one part we use the @@ -1182,7 +1191,7 @@ tr(A,B)=t∧tr(C,D)=t SQL. - Subselect + Subselect If we want to know all parts having a greater price than the part @@ -1250,7 +1259,7 @@ tr(A,B)=t∧tr(C,D)=t difference of the tuples derived by two subqueries. - Union, Intersect, Except + Union, Intersect, Except The following query is an example for UNION: @@ -1334,7 +1343,7 @@ The only tuple returned by both parts of the query is the one having $SNO=2$. - Create Table + Create Table The most fundamental command for data definition is the @@ -1349,10 +1358,10 @@ The only tuple returned by both parts of the query is the one having $SNO=2$. - Table Creation + Table Creation - To create the tables defined in figure + To create the tables defined in the following SQL statements are used: @@ -1467,7 +1476,7 @@ The only tuple returned by both parts of the query is the one having $SNO=2$. - Create Index + Create Index To create an index named I on attribute SNAME of relation SUPPLIER @@ -1506,7 +1515,8 @@ The only tuple returned by both parts of the query is the one having $SNO=2$. stored data. Instead, the system stores the definition of the view (i.e. the rules about how to access physically stored base tables in order to materialize the view) somewhere in the system - catalogs (see section ). For a + catalogs (see + ). For a discussion on different techniques to implement views refer to - (last updated 1999-05-19) + (last updated 1999-06-01) - PostgreSQL is copyright (©) 1998-9 + PostgreSQL is © 1998-9 by the Postgres Global Development Group. @@ -146,11 +151,14 @@ Your name here... &keys; &array; &inherit; + &mvcc; &environ; &manage; &storage; &commands; + + &datetime;