How hard would it be to rewrite table content on composite attribute type change?
For simple use cases:
create type complex as (i int, j int);
create table numbers (c complex);
insert into numbers values(row(1,2));
I can work around
alter complex from int to bigint
"fairly" easy with
alter type complex add attribute _tmp_i bigint;
--loop for each table
update numbers set c._tmp_i = (c).i;
--end loop
alter type complex drop attribute i;
alter type complex rename attribute _tmp_i to i;
I can "easily" work with deep nested types, but things starts to get PITA when there is
array involved because I need to unroll it and pack it again.
Regards,
Rikard