PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Zapytanie PostgreSQL do zmiany nazwy i zmiany typu kolumny za pomocą pojedynczego zapytania

W PostgreSQL, ALTER TABLE może wykonać szereg operacji. A więc:

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

jest taki sam jak

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

Jednak... dlaczego? IIRC zmiana nazwy nie spowoduje skanowania całej tabeli, więc nie ma żadnej korzyści nad wykonaniem dwóch instrukcji osobno, w ramach jednej transakcji. Jaki problem próbujesz z tym rozwiązać?



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Usuwanie komentarza COMMENT ON ze wszystkich obiektów w PostgreSQL

  2. Nie rób nic w procedurze wyzwalania

  3. W ramach funkcji wyzwalacza, jak uzyskać, które pola są aktualizowane?

  4. Uwierzytelnianie hasła nie powiodło się dla kontenera postgres platformy Docker

  5. Problem z kompilacją programu za pomocą pqxx