Re: [SQL] "quoting" column names

From: Patrik Kudo <kudo(at)partitur(dot)se>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
Cc: pgsql-sql(at)postgreSQL(dot)org
Subject: Re: [SQL] "quoting" column names
Date: 1999-07-13 14:19:23
Message-ID: 378B4AEB.60D6B07F@partitur.se
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Tom Lane wrote:
>
> Patrik Kudo <kudo(at)partitur(dot)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

In response to

Browse pgsql-sql by date

  From Date Subject
Next Message Herouth Maoz 1999-07-13 14:30:48 Re: [SQL] "quoting" column names
Previous Message Tom Lane 1999-07-13 14:08:21 Re: [SQL] "quoting" column names