Re: Weird constraint output

Поиск
Список
Период
Сортировка
От Andreas Pflug
Тема Re: Weird constraint output
Дата
Msg-id 3F4E1A89.8010506@pse-consulting.de
обсуждение исходный текст
Ответ на Weird constraint output  (Jeroen Ruigrok/asmodai <asmodai@wxs.nl>)
Список pgsql-hackers
Jeroen Ruigrok/asmodai wrote:

>Check constraints: "bugs_severity_cstr" ((bug_severity =
>'blocker'::character varying) OR (bug_severity = 'critical'::character
>varying) OR (bug_severity = 'major'::character varying))
>
>If you have even more choices there (as Bugzilla does) you even get:
>
>CONSTRAINT bugs_severity_cstr CHECK ((((((((bug_severity =
>'blocker'::character varying) OR (bug_severity = 'critical'::character
>varying)) OR (bug_severity = 'major'::character varying)) OR
>(bug_severity = 'normal'::character varying)) OR (bug_severity =
>'minor'::character varying)) OR (bug_severity = 'trivial'::character
>varying)) OR (bug_severity = 'enhancement'::character varying)))
>);
>
>But there is no logic to have all those parens plus it makes pg_dump -s
>and \d tablename a whole lot messier to read.
>
>Can anyone clarify why we have it like this?  Or whether or not it is a
>bug perhaps?  I could understand micro optimizations, but in this case?
>

Obviously psql uses either use pg_constraint.consrc or 
pg_get_expr(conbin, conrelid) which both will give this lot of 
parentheses, so it's not a bug, but a feature
For easier reengineering, I invented several pg_get_xxx functions with a 
pretty-print option, which omits this messy parentheses, because I 
noticed how ugly this looks while writing pgAdmin3 (especially for large 
views with many joins and big expressions).
There have been suggestions to use the pretty-print options for psql (I 
don't know which have been realized so far), and very harsh rejects 
doing this in pg_dump, namely from Tom).

Regards,
Andreas



В списке pgsql-hackers по дате отправления:

Предыдущее
От: ohp@pyrenet.fr
Дата:
Сообщение: Re: Index creation takes for ever
Следующее
От: "Marie G. Tuite"
Дата:
Сообщение: Re: [GENERAL] before trigger problem