In PostgreSQL, ALTER TABLE
kan een reeks bewerkingen uitvoeren. Dus:
ALTER TABLE <tablename> RENAME <oldcolumn> TO <newcolumn>;
ALTER TABLE <tablename> ALTER COLUMN <columnname> TYPE <newtype>;
is hetzelfde als
ALTER TABLE <tablename>
ALTER COLUMN <columnname> TYPE <newtype>
RENAME <oldcolumn> TO <newcolumn>;
Maar... waarom? IIRC de hernoeming veroorzaakt geen scan van de volledige tabel, dus er is geen voordeel boven het afzonderlijk doen van de twee verklaringen, binnen één transactie. Welk probleem probeer je hiermee eigenlijk op te lossen?