types = { # add your custom types here
'attendance': ('Notconfirmed','Coming', 'Notcoming', 'Maycome',),
}
CREATE TYPE attendance AS ENUM types;
上記のクエリは、型で言及された列挙ラベルを持つ列挙型出席を作成します。デフォルトのラベルでタイプを作成する方法は?この場合、デフォルト値Notconfirmedで出席タイプを作成します。
私はあなたと同じことを試みていて、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 *;
これは私にとって魅力のように働きました。
スダルシャンの言葉に加えて...
誰かが別のスキーマの例を必要とする場合:
CREATE TABLE schema_name.table_name ( --
id serial,
s schema_name.type_name default 'Notconfirmed'::schema_name.type_name
);
テーブルに以下のクエリが必要な理由がわかりません。このラインなしでも試してみましたが、まだ機能します。
INSERT INTO t(id) VALUES (default) RETURNING *;