Thread: UPDATE ... SET = DEFAULT

UPDATE ... SET = DEFAULT

From
Rod Taylor
Date:
Is there an easy way of doing this?  Insert was simple as all that
needed to be done was to throw away the reference to the column.

It would seem a new primnode (change InsertDef into SetDefault or
similar) will be required with some executor logic.
--
Rod Taylor <rbt@rbt.ca>

PGP Key: http://www.rbt.ca/rbtpub.asc

Re: UPDATE ... SET = DEFAULT

From
Tom Lane
Date:
Rod Taylor <rbt@rbt.ca> writes:
> It would seem a new primnode (change InsertDef into SetDefault or
> similar) will be required with some executor logic.

It is not the executor's business to know about defaults.  The rewriter
is the place where defaults get inserted - see rewriteTargetList().

Note that default NULL will have to be treated a little differently from
what we do for INSERT, since the, um, default behavior of UPDATE is to
preserve columns rather than replace 'em with nulls.
        regards, tom lane


Re: UPDATE ... SET = DEFAULT

From
Rod Taylor
Date:
On Thu, 2003-06-05 at 16:45, Tom Lane wrote:
> Rod Taylor <rbt@rbt.ca> writes:
> > It would seem a new primnode (change InsertDef into SetDefault or
> > similar) will be required with some executor logic.
>
> It is not the executor's business to know about defaults.  The rewriter
> is the place where defaults get inserted - see rewriteTargetList().

Ahh, thanks.  I was fairly sure I had the wrong spot.

--
Rod Taylor <rbt@rbt.ca>

PGP Key: http://www.rbt.ca/rbtpub.asc