Re: [SQL] "quoting" column names
От | Tom Lane |
---|---|
Тема | Re: [SQL] "quoting" column names |
Дата | |
Msg-id | 22436.931874901@sss.pgh.pa.us обсуждение исходный текст |
Ответ на | "quoting" column names (Patrik Kudo <kudo@partitur.se>) |
Ответы |
Re: [SQL] "quoting" column names
|
Список | pgsql-sql |
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. > 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?) 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. regards, tom lane
В списке pgsql-sql по дате отправления: