sql >> Databáze >  >> RDS >> PostgreSQL

Upgrade sloupce varchar na typ enum v postgresql

Musíte definovat obsazení, které se má použít, protože není k dispozici žádné výchozí obsazení.

Pokud jsou všechny hodnoty v varcharColumn v souladu s definicí výčtu, mělo by fungovat následující:

alter table foo 
  ALTER COLUMN varcharColumn TYPE enum_type using varcharColumn::enum_type;

Já osobně nemám rád enumy, protože jsou dost nepružné. Dávám přednost kontrolnímu omezení na sloupci varchar, pokud chci omezit hodnoty ve sloupci. Nebo – pokud se seznam hodnot často mění a bude se rozrůstat – stará dobrá „vyhledávací tabulka“ s omezením cizího klíče.



  1. Nainstalujte a nakonfigurujte MySQL Workbench na Ubuntu 16.04

  2. Jak napsat Pandas Dataframe do modelu Django

  3. Jak funguje načítání dat ze serveru SQL Server do SqlDataReader?

  4. Převést „čas“ na „datetime2“ v SQL Server (příklady T-SQL)