Override defaults in inherited fields and tables

Started by Uwe Feldtmannover 23 years ago2 messagesgeneral
Jump to latest
#1Uwe Feldtmann
uwe@microshare.com.au

Hi all,

Is it possible to override the defaults in inherited fields when
defining tables?

e.g.

table1
field1
field2

table2 inherits table1
field1 default 'A'
field3
field4

table3 inherits table1
field1 default 'B'
field5
field6

#2Tom Lane
tgl@sss.pgh.pa.us
In reply to: Uwe Feldtmann (#1)
Re: Override defaults in inherited fields and tables

Uwe Feldtmann <uwe@microshare.com.au> writes:

Is it possible to override the defaults in inherited fields when
defining tables?

Sure. This has worked for a release or two, IIRC:

regression=# create table parent (f1 int default 42);
CREATE TABLE
regression=# create table child (f1 int default 43) inherits (parent);
NOTICE: CREATE TABLE: merging attribute "f1" with inherited definition
CREATE TABLE
regression=# insert into child default values;
INSERT 153946 1
regression=# select * from child;
f1
----
43
(1 row)

regards, tom lane