Added to TODO: * Prevent child tables from altering constraints like CHECK that were inherited from the parent table --------------------------------------------------------------------------- Tom Lane wrote: > Simon Riggs <simon@xxxxxxxxxxxxxxx> writes: > > Doing anything to restrict dropping of inherited constraints seems like > > wasted effort and potentially annoying anyhow. > > Uh, why? Arguably the constraints are as much part of the parent table > definition as the columns themselves. If you had "check (f1 > 0)" in > the definition of a table, wouldn't you be pretty surprised to select > from it and find rows with f1 < 0? > > regression=# create table parent(f1 int check (f1 > 0)); > CREATE TABLE > regression=# create table child() inherits(parent); > CREATE TABLE > regression=# alter table child drop constraint parent_f1_check; > ALTER TABLE > regression=# insert into child values(-1); > INSERT 0 1 > regression=# select * from parent; > f1 > ---- > -1 > (1 row) > > I think a good argument can be made that the above behavior is a bug, > and that the ALTER command should have been rejected. We've gone to > great lengths to make sure you can't ALTER a child table to make it > incompatible with the parent in terms of the column names and types; > shouldn't this be true of check constraints as well? > > regards, tom lane > > ---------------------------(end of broadcast)--------------------------- > TIP 3: if posting/reading through Usenet, please send an appropriate > subscribe-nomail command to majordomo@xxxxxxxxxxxxxx so that your > message can get through to the mailing list cleanly > -- Bruce Momjian | http://candle.pha.pa.us pgman@xxxxxxxxxxxxxxxx | (610) 359-1001 + If your life is a hard drive, | 13 Roberts Road + Christ can be your backup. | Newtown Square, Pennsylvania 19073 ---------------------------(end of broadcast)--------------------------- TIP 3: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to majordomo@xxxxxxxxxxxxxx so that your message can get through to the mailing list cleanly