Re: [SQL] "quoting" column names - Mailing list pgsql-sql

From Patrik Kudo
Subject Re: [SQL] "quoting" column names
Date
Msg-id 378B4AEB.60D6B07F@partitur.se
Whole thread Raw
In response to Re: [SQL] "quoting" column names  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-sql
Tom Lane wrote:
> 
> Patrik Kudo <kudo@partitur.se> writes:
> > create table login (userid text, when datetime);
> > select when from login where userid = 'xxxx';
> > In 6.5 I have to do:
> > select "when" from login where userid = 'xxxx';
> 
> Right ... WHEN is a keyword in CASE expressions, which didn't use to
> be implemented but are now.

Ah! that explains that part...

> > My question now is, should I always quote column names, just in case,
> > or should I only quote column names that are "almost reserved"?
> 
> In theory you should only have to worry about keywords that are
> reserved in SQL92 but that Postgres hasn't gotten around to implementing
> yet.  That's a fairly short list, I think, but I do not have the
> details handy.  (Anyone?)

The list of reserved keywords can be found at:http://www.postgresql.org/ -> Info Central -> Documentation -> User's
Guide
-> SQL Syntax -> Key Words.

That list doesn't say which need to be quoted though.

> Quoting every column name in sight would make your SQL pretty unreadable
> (pg_dump now does it by default ... try reading pg_dump commands :-().
> Also, if you have a reserved word as a column name, you won't be able
> to access the table at all using tools that don't quote column names.
> Better to rename your columns if you get burnt by this.

Will do, will do...

/Kudo


pgsql-sql by date:

Previous
From: Thomas Good
Date:
Subject: Re: [SQL] calculating percentages
Next
From: Herouth Maoz
Date:
Subject: Re: [SQL] "quoting" column names