From: | Richard Huxton <dev(at)archonet(dot)com> |
---|---|
To: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
Cc: | btober(at)seaworthysys(dot)com, pgsql-general(at)postgresql(dot)org |
Subject: | Re: Column defaults fail with rules on view |
Date: | 2003-09-19 15:27:36 |
Message-ID: | 200309191627.36854.dev@archonet.com |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
On Friday 19 September 2003 16:04, Tom Lane wrote:
> Richard Huxton <dev(at)archonet(dot)com> writes:
> > On Friday 19 September 2003 09:00, btober(at)seaworthysys(dot)com wrote:
> >> Is this supposed to work that way? I would expect field3 and field4 to
> >> have their respective column defaults assigned on the second INSERT (row
> >> B), just like on the first INSERT (row A).
> >
> > Hmm - well, you're explicitly telling it to insert VALUES (...,
> > new.field3, ...) so if new.field3 is null then it *should* do that.
>
> Exactly. The defaults attached to the underlying table determine what
> gets added to an INSERT into the underlying table. In this case, since
> the rule's INSERT specifies all the fields, there is no scope for those
> defaults to apply.
>
> What Berend actually wants is to attach column defaults to the *view*,
> so that they apply to an INSERT mentioning the view. You can do this in
> recent PG releases (7.3 for sure, not sure about 7.2) using ALTER TABLE
> ... ADD DEFAULT.
Hmm - didn't know that. Useful.
Am I right in thinking that *in theory* we should be able to "inherit" the
defaults to the view automatically?
--
Richard Huxton
Archonet Ltd
From | Date | Subject | |
---|---|---|---|
Next Message | dschmidt | 2003-09-19 15:34:17 | |
Previous Message | Richard Huxton | 2003-09-19 15:24:00 | Re: An idea for IPU ( We need another acronymn! ) |