In PostgreSQL, ALTER TABLE
può richiedere una serie di operazioni. Quindi:
ALTER TABLE <tablename> RENAME <oldcolumn> TO <newcolumn>;
ALTER TABLE <tablename> ALTER COLUMN <columnname> TYPE <newtype>;
è uguale a
ALTER TABLE <tablename>
ALTER COLUMN <columnname> TYPE <newtype>
RENAME <oldcolumn> TO <newcolumn>;
Tuttavia... perché? IIRC la ridenominazione non causerà una scansione dell'intera tabella, quindi non c'è alcun vantaggio nel fare solo le due istruzioni separatamente, all'interno di una transazione. Quale problema stai effettivamente cercando di risolvere con questo?