Re: regclass error reports improperly downcased
От | Jim Nasby |
---|---|
Тема | Re: regclass error reports improperly downcased |
Дата | |
Msg-id | 527D45FA.2010700@enova.com обсуждение исходный текст |
Ответ на | Re: regclass error reports improperly downcased (Tom Lane <tgl@sss.pgh.pa.us>) |
Ответы |
Re: regclass error reports improperly downcased
|
Список | pgsql-hackers |
On 11/7/13 6:41 PM, Tom Lane wrote: > Jim Nasby <jnasby@enova.com> writes: >> decibel@decina.cashnetusa=# SELECT 'Moo'::regclass; >> ERROR: relation "moo" does not exist at character 8 > > That's doing what it's supposed to. Compare > > regression=# select 'Moo'::regclass; > ERROR: relation "moo" does not exist > LINE 1: select 'Moo'::regclass; > ^ > regression=# select '"Moo"'::regclass; > ERROR: relation "Moo" does not exist > LINE 1: select '"Moo"'::regclass; > ^ > > The regclass input converter applies the same case-folding rules as > the SQL parser does, ie, fold unless double-quoted. Ahh, duh. Hrm... I ran across this because someone here got confused by this: SELECT pg_total_relation_size( schema_name || '.' || relname ) FROM pg_stat_all_tables ERROR: relation "moo" does not exist Obviously the problem is that they needed to use quote_ident(), but I was hoping to make the error less confusing to dealwith. Perhaps we can add a hint? Something to the effect of "Do you need to use double-quotes or quote_ident()?" -- Jim Nasby, Lead Data Architect (512) 569-9461
В списке pgsql-hackers по дате отправления: