On Thu, Dec 4, 2008 at 9:53 AM, Dmitry Koterov <[EMAIL PROTECTED]> wrote: > Hello. > > I can successfully ALTER a NON-EMPTY table (ct) which ROWTYPE is used as a > column type for another table (dt): > > CREATE TABLE ct (id INTEGER); > CREATE TABLE dt (id INTEGER, c ct); > > INSERT INTO dt VALUES(1, '(666)'); > SELECT * FROM dt; > -- (1, '(666)') > > ALTER TABLE ct ADD COLUMN n INTEGER; > SELECT * FROM dt; > -- (1, '(666,)') > > You see, '(666,)' means that the new field is added successfully. > > > But, if I declare ct as a COMPOSITE type (not a table), it is not permitted > to ALTER this type (Postgres says that there are dependensies on ct). > Why?
Because of this there is no reason to ever use 'create type'....always use 'create table'. 'alter type' can't add/remove columns anyways. merlin -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers