defaults referencing other columns?

From: James Cloos <cloos(at)jhcloos(dot)com>
To: pgsql-novice(at)postgresql(dot)org
Subject: defaults referencing other columns?
Date: 2006-09-03 18:51:25
Message-ID: m38xl0aim3.fsf@lugabout.jhcloos.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-novice

Can a default value reference the value specified for one of the other
columns in the insert?

If you have something like:

CREATE TABLE foo ( id INT PRIMARY KEY,
name TEXT NOT NULL,
bar TEXT );

can foo.bar have a default that is the result of calling a function on
the value currently being inserted into foo.id or foo.name?

I'd like something along the lines of:

bar TEXT DEFAULT somefunc(id)

but how does one specify that the value to be passed to the funtion is
the exact value that insert is inserting into the foo.id column?

And will it work even when the value being inserted into foo.id is
itself the result of a function? (I presume so, but ....)

-JimC
--
James Cloos <cloos(at)jhcloos(dot)com> OpenPGP: 0xED7DAEA6

Responses

Browse pgsql-novice by date

  From Date Subject
Next Message Bruno Wolff III 2006-09-03 19:30:53 Re: Progress and Questions
Previous Message James Cloos 2006-09-03 18:43:00 function parameters