sql >> データベース >  >> RDS >> PostgreSQL

postgresqlでvarchar列を列挙型にアップグレードする

    使用可能なデフォルトのキャストがないため、使用するキャストを定義する必要があります。

    varcharColumnのすべての値の場合 列挙型の定義に準拠すると、次のように機能するはずです。

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

    個人的には、列挙型は非常に柔軟性がないため、好きではありません。列の値を制限したい場合は、varchar列にチェック制約を設定することをお勧めします。または、値のリストが頻繁に変更されて大きくなる場合は、外部キー制約のある古き良き「ルックアップテーブル」。



    1. PHPでPDOを使用して開いたSQL接続を閉じる必要がありますか

    2. 1ではなく2で始まるOracleシーケンス

    3. タスクリスト

    4. SQLで数値をフロア化する方法