Re: Re: Changing the default value of an inherited column - Mailing list pgsql-hackers

From ncm@zembu.com (Nathan Myers)
Subject Re: Re: Changing the default value of an inherited column
Date
Msg-id 20010402143713.R3797@store.zembu.com
Whole thread Raw
In response to Re: Re: Changing the default value of an inherited column  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-hackers
On Sun, Apr 01, 2001 at 03:15:56PM -0400, Tom Lane wrote:
> Christopher Masto <chris@netmonger.net> writes:
> > Another thing that seems kind of interesting would be to have:
> > CREATE TABLE base (table_id CHAR(8) NOT NULL [, etc.]);
> > CREATE TABLE foo  (table_id CHAR(8) NOT NULL DEFAULT 'foo');
> > CREATE TABLE bar  (table_id CHAR(8) NOT NULL DEFAULT 'bar');
> > Then a function on "base" could look at table_id and know which
> > table it's working on.  A waste of space, but I can think of
> > uses for it.
> 
> This particular need is superseded in 7.1 by the 'tableoid'
> pseudo-column.  However you can certainly imagine variants of this
> that tableoid doesn't handle, for example columns where the subtable
> creator can provide a useful-but-not-always-correct default value.

A bit of O-O doctrine... when you find yourself tempted to do something 
like the above, it usually means you're trying to do the wrong thing.  
You may not have a choice, in some cases, but you should know you are 
on the way to architecture meltdown.  "She'll blow, Cap'n!"

Nathan Myers
ncm@zembu.com


pgsql-hackers by date:

Previous
From: ncm@zembu.com (Nathan Myers)
Date:
Subject: Re: Re: Changing the default value of an inherited column
Next
From: ncm@zembu.com (Nathan Myers)
Date:
Subject: Re: Re: Changing the default value of an inherited column