I PostgreSQL, ALTER TABLE
kan ta en rad operationer. Så:
ALTER TABLE <tablename> RENAME <oldcolumn> TO <newcolumn>;
ALTER TABLE <tablename> ALTER COLUMN <columnname> TYPE <newtype>;
är samma som
ALTER TABLE <tablename>
ALTER COLUMN <columnname> TYPE <newtype>
RENAME <oldcolumn> TO <newcolumn>;
Men... varför? IIRC byta namn kommer inte att orsaka en heltabellsgenomsökning, så det finns ingen fördel med att bara göra de två påståendena separat, inom en transaktion. Vilket problem försöker du egentligen lösa med detta?