2013-11-09 4 views
5
types = { # add your custom types here 
      'attendance': ('Notconfirmed','Coming', 'Notcoming', 'Maycome',), 
      } 

    CREATE TYPE attendance AS ENUM types; 

上記のクエリは、型で説明したenumlabelsを使用して列挙型出席を作成します。デフォルトのラベルで型を作成するには?この場合、デフォルト値Notconfirmedの出席タイプを作成したいと思います。デフォルト値で列挙型フィールドを作成するには?

答えて

29

私はあなたと同じことを試みていましたが、私はstackoverflowで答えを得ました。デフォルト値でENUMを作成することは可能です。ここで私はあなたのために持っているものです。

CREATE TYPE status AS ENUM ('Notconfirmed','Coming', 'Notcoming', 'Maycome'); 

CREATE TABLE t (
    id serial, 
    s status default 'Notconfirmed' -- <==== default value 
); 

INSERT INTO t(id) VALUES (default) RETURNING *; 

これは私にとって魅力的でした。 Sudarshanの言葉に加えて

0

...

誰かが異なるスキーマの例を必要とする場合:

CREATE TABLE schema_name.table_name (-- 
    id serial, 
    s schema_name.type_name default 'Notconfirmed'::schema_name.type_name 
); 
関連する問題