I think that postgres as mature as it is now should really
have a feature to change types of columns etc.
FWIW, I'm pretty sure Oracle won't let you do this either unless
the column is empty. It seems to be a problem they've all
chosen not to address.
I'll let the reader decide whether they consider Oracle to be
mature or not. :)