From e38c920dba59a39322a865997e4d33715a6e38a7 Mon Sep 17 00:00:00 2001 From: Bruce Momjian <bruce@momjian.us> Date: Wed, 10 Aug 2005 19:30:05 +0000 Subject: [PATCH] Add new FAQ information. Martijn van Oosterhout --- doc/FAQ | 27 ++++++++++++++++++++++++++- doc/src/FAQ/FAQ.html | 44 ++++++++++++++++++++++++++++++++++++++------ 2 files changed, 64 insertions(+), 7 deletions(-) diff --git a/doc/FAQ b/doc/FAQ index d7e2d5ea596..e1c3cf1999a 100644 --- a/doc/FAQ +++ b/doc/FAQ @@ -1,7 +1,7 @@ Frequently Asked Questions (FAQ) for PostgreSQL - Last updated: Fri Jul 29 10:05:09 EDT 2005 + Last updated: Wed Aug 10 15:29:42 EDT 2005 Current maintainer: Bruce Momjian (pgman@candle.pha.pa.us) @@ -79,6 +79,7 @@ 4.19) Why do I get "relation with OID ##### does not exist" errors when accessing temporary tables in PL/PgSQL functions? 4.20) What replication solutions are available? + 4.21) Why are my table and column names not recognized in my query? _________________________________________________________________ General Questions @@ -471,6 +472,12 @@ The maximum table size and maximum number of columns can be quadrupled by increasing the default block size to 32k. + One limitation is that indexes can not be created on columns longer + than about 2,000 characters. Fortunately, such indexes are rarely + needed. Uniqueness is best guaranteed using another column that is an + MD5 hash of the long column, and full text indexing allows for + searching of words within the column. + 4.5) How much database disk space is required to store data from a typical text file? @@ -578,6 +585,11 @@ expresssion index, it will be used: CREATE INDEX tabindex ON tab (lower(col)); + If the above index is created as UNIQUE, though the column can store + upper and lowercase characters, it can not have identical values that + differ only in case. To force a particular case to be stored in the + column, use a CHECK constraint or a trigger. + 4.9) In a query, how do I detect if a field is NULL? How can I sort on whether a field is NULL or not? @@ -776,3 +788,16 @@ There are also commercial and hardware-based replication solutions available supporting a variety of replication models. + + 4.20) Why are my table and column names not recognized in my query? + + The most common cause is the use of double-quotes around table or + column names during table creation. When double-quotes are used, table + and column names (called identifiers) are stored case-sensitive, + meaning you must use double-quotes when referencing the names in a + query. Some interfaces, like pgAdmin, automatically double-quote + identifiers during table creation. So, for identifiers to be + recognized, you must either: + * Avoid double-quoting identifiers when creating tables + * Use only lowercase characters in identifiers + * Double-quote identifiers when referencing them in queries diff --git a/doc/src/FAQ/FAQ.html b/doc/src/FAQ/FAQ.html index 71e659db94d..07dd956e2ef 100644 --- a/doc/src/FAQ/FAQ.html +++ b/doc/src/FAQ/FAQ.html @@ -10,7 +10,7 @@ alink="#0000ff"> <H1>Frequently Asked Questions (FAQ) for PostgreSQL</H1> - <P>Last updated: Mon May 30 09:11:03 EDT 2005</P> + <P>Last updated: Wed Aug 10 15:29:42 EDT 2005</P> <P>Current maintainer: Bruce Momjian (<A href= "mailto:pgman@candle.pha.pa.us">pgman@candle.pha.pa.us</A>) @@ -26,7 +26,7 @@ <HR> <H2 align="center">General Questions</H2> - <A href="#1.1">1.1</A>) What is PostgreSQL? How is it pronounced?<BR> + <A href="#1.1">1.1</A>) What is PostgreSQL? How is it pronounced?<BR> <A href="#1.2">1.2</A>) What is the copyright of PostgreSQL?<BR> <A href="#1.3">1.3</A>) What platforms does PostgreSQL support?<BR> <A href="#1.4">1.4</A>) Where can I get PostgreSQL?<BR> @@ -116,7 +116,9 @@ does not exist" errors when accessing temporary tables in PL/PgSQL functions?<BR> <A href="#4.20">4.20</A>) What replication solutions are available?<BR> - + <A href="#4.21">4.21</A>) Why are my table and column names not + recognized in my query?<BR> + <HR> @@ -124,8 +126,10 @@ <H3><A name="1.1">1.1</A>) What is PostgreSQL? How is it pronounced?</H3> - <P>PostgreSQL is pronounced <I>Post-Gres-Q-L</I>, also called just - <I>Postgres</I>.</P> + <P>PostgreSQL is pronounced <I>Post-Gres-Q-L</I>, and is also sometimes + referred to as just <I>Postgres</I>. An audio file is available in + <a href="http://www.postgresql.org/files/postgresql.mp3">MP3 format</a> for + those would like to hear the pronunciation.</P> <P>PostgreSQL is an object-relational database system that has the features of traditional commercial database systems with @@ -613,6 +617,12 @@ table?</TD><TD>unlimited</TD></TR> <P>The maximum table size and maximum number of columns can be quadrupled by increasing the default block size to 32k.</P> + <P>One limitation is that indexes can not be created on columns + longer than about 2,000 characters. Fortunately, such indexes are + rarely needed. Uniqueness is best guaranteed using another column + that is an MD5 hash of the long column, and full text indexing + allows for searching of words within the column.</P> + <H3><A name="4.5">4.5</A>) How much database disk space is required to store data from a typical text file?</H3> @@ -740,7 +750,12 @@ table?</TD><TD>unlimited</TD></TR> <PRE> CREATE INDEX tabindex ON tab (lower(col)); </PRE> - + <P>If the above index is created as <SMALL>UNIQUE</SMALL>, though + the column can store upper and lowercase characters, it can not have + identical values that differ only in case. To force a particular + case to be stored in the column, use a <SMALL>CHECK</SMALL> + constraint or a trigger.</P> + <H3><A name="4.9">4.9</A>) In a query, how do I detect if a field is <SMALL>NULL</SMALL>? How can I sort on whether a field is <SMALL> NULL</SMALL> or not?</H3> @@ -1000,5 +1015,22 @@ length</TD></TR> <P>There are also commercial and hardware-based replication solutions available supporting a variety of replication models.</P> + + <H3><A name="4.20">4.20</A>) Why are my table and column names not + recognized in my query?</H3> + + <P>The most common cause is the use of double-quotes around table or + column names during table creation. When double-quotes are used, + table and column names (called identifiers) are stored <a + href="http://www.postgresql.org/docs/8.0/static/sql-syntax.html#SQL- + SYNTAX-IDENTIFIERS">case-sensitive</a>, meaning you must use + double-quotes when referencing the names in a query. Some interfaces, + like pgAdmin, automatically double-quote identifiers during table + creation. So, for identifiers to be recognized, you must either: + <UL> + <LI>Avoid double-quoting identifiers when creating tables</LI> + <LI>Use only lowercase characters in identifiers</LI> + <LI>Double-quote identifiers when referencing them in queries</LI> + </UL> </BODY> </HTML> -- GitLab