PostgreSQL
 sql >> Datenbank >  >> RDS >> PostgreSQL

PostgreSQL-Abfrage zum Umbenennen und Ändern des Spaltentyps mit einer einzigen Abfrage

In PostgreSQL ALTER TABLE kann eine Reihe von Operationen ausführen. Also:

ALTER TABLE <tablename> RENAME <oldcolumn> TO <newcolumn>;
ALTER TABLE <tablename> ALTER COLUMN <columnname> TYPE <newtype>;

ist dasselbe wie

ALTER TABLE <tablename> 
  ALTER COLUMN <columnname> TYPE <newtype>
  RENAME <oldcolumn> TO <newcolumn>;

Aber ... warum? IIRC die Umbenennung verursacht keinen vollständigen Tabellenscan, daher gibt es keinen Vorteil, wenn Sie die beiden Anweisungen nur separat innerhalb einer Transaktion ausführen. Welches Problem versuchst du damit eigentlich zu lösen?