¾�ΥС�������ʸ�� �� 17 | 16 | 15 | 14 | 13 | 12 | 11 | 10 | 9.6 | 9.5 | 9.4 | 9.3 | 9.2 | 9.1 | 9.0 | 8.4 | 8.3 | 8.2 | 8.1 | 8.0 | 7.4 | 7.3 | 7.2

CREATE DOMAIN

名前

CREATE DOMAIN -- �������ɥᥤ����������

概要

CREATE DOMAIN name [ AS ] data_type
    [ DEFAULT expression ]
    [ constraint [ ... ] ]

constraint�ϡ����Τ褦�ˤʤ�ޤ���

[ CONSTRAINT constraint_name ]
{ NOT NULL | NULL | CHECK (expression) }

����

CREATE DOMAIN�Ͽ������ǡ����ɥᥤ���������ޤ��� �ɥᥤ��Ȥϴ���Ū�ˤϡ����̤�����������ǽ���ͽ�����Ф������¡ˤ���ä��ǡ������Ǥ��� �ɥᥤ�����������桼���������ν�ͭ�ԤȤʤ�ޤ���

��������̾���դ����Ƥ�������㤨�С�CREATE DOMAIN myschema.mydomain ...�ˡ��ɥᥤ��ϻ��ꤵ�줿�������ޤǺ�������ޤ��� ��������̾���դ����Ƥ��ʤ���С����Υɥᥤ��ϸ��ߤΥ������ޤǺ�������ޤ��� �ɥᥤ��̾�ϡ����Υ����������¸�ߤ���ǡ���������ӥɥᥤ��δ֤ǡ���դǤ���ɬ�פ�����ޤ���

�ɥᥤ�����Ѥ���ȡ����̤������1�ս�ˤޤȤ�뤳�Ȥ��Ǥ������ƥʥ󥹤������Ǥ��� ���Ȥ��С�E-mail���ɥ쥹���Ǽ������ʣ���Υơ��֥�ǻ��Ѥ���Ƥ��ơ����ɥ쥹��ʸ�θ��ڤΤ��᤹�٤Ƥ�Ʊ���CHECK�����ɬ�פȤ��Ƥ���褦�ʾ��Ǥ��� ���Τ褦�ʾ�硢�ƥơ��֥�˸��̤���������ꤹ����⡢�ɥᥤ���������Ƥ���������

�ѥ�᡼��

name

��������ɥᥤ���̾���Ǥ��ʥ������޽���̾�Ǥ�ġˡ�

data_type

�ɥᥤ��δ��äȤʤ�ǡ������Ǥ��� �������Ҥ��ޤ�뤳�Ȥ��Ǥ��ޤ���

DEFAULT expression

DEFAULT�����Ѥ���ȡ��ɥᥤ��ǡ���������˥ǥե�����ͤ����Ǥ��ޤ��� Ǥ�դ�̵�ѿ������ͤȤ��뤳�Ȥ��Ǥ��ޤ��ʤ����������䤤��碌�ϵ��Ĥ���ޤ���ˡ� �ǥե���ȼ��Υǡ������ϡ����Υɥᥤ��Υǡ������Ȱ��פ���ɬ�פ�����ޤ��� �ǥե�����ͤ����ꤵ��ʤ���硢�ǥե�����ͤ�NULL�ͤȤʤ�ޤ���

�ǥե���ȼ��ϡ��������ˤ����Ƴ�����������ͤ����ꤵ��ʤ��ä����˻��Ѥ���ޤ��� ���������Ф��ƥǥե�����ͤ�������줿��硢�ɥᥤ��˴�Ϣ����ǥե�����ͤϾ�񤭤���ޤ��� ȿ�Фˡ����äȤʤ�ǡ������˴�Ϣ����ǥե�����ͤϡ��ɥᥤ��Υǥե�����ͤˤ�äƾ�񤭤���ޤ���

CONSTRAINT constraint_name

�����̾���Ǥ��ʾ�ά��ǽ�Ǥ��ˡ� ���ꤵ��ʤ���С������ƥब̾�����������ޤ���

NOT NULL

���Υɥᥤ����ͤȤ���NULL�λ��Ѥ��̾�ػߤ��ޤ��� �����������������ĥɥᥤ��Ǥϡ��㤨�к���������INSERT INTO tab (domcol) VALUES ((SELECT domcol FROM tab WHERE false))�ʤɡ�NULL�Ȥʤ�ɥᥤ�󷿤Ȱ��פ���褦���������줿��硢NULL��Ȥ뤳�Ȥ��Ǥ��ޤ���

NULL

�ɥᥤ����ͤȤ���NULL�λ��Ѥ���Ĥ��ޤ��� �����餬�ǥե���ȤǤ���

���ζ����ɸ��Ū��SQL�ǡ����١����Ȥθߴ�������Ĥ���������Ѱդ���Ƥ��ޤ��� ���������ץꥱ�������Ǥ��ζ����Ѥ���ΤϤ�����Ǥ��ޤ���

CHECK (expression)

CHECK��ϡ������������ɥᥤ����ͤ��������ʤ���Фʤ�ʤ���������ꤷ�ޤ��� ������ϡ�Boolean���η�̤��������뼰�Ǥ���ɬ�פ�����ޤ��� ����������ͤ򻲾Ȥ���ˤϡ�VALUE�Ȥ���������ɤ���Ѥ��٤��Ǥ���

�������Ǥϡ�CHECK�������䤤��碌��ޤ᤿�ꡢVALUE�ʳ����ѿ��򻲾Ȥ����ꤹ�뤳�ȤϤǤ��ޤ���

��

������Ǥϡ�us_postal_code�ǡ�����������������η���ơ��֥��������ǻ��Ѥ��ޤ��� �ǡ�����ͭ����US͹���ֹ�Ǥ��뤫�ɤ����򸡾ڤ��뤿�������ɽ�����������Ѥ���ޤ���

CREATE DOMAIN us_postal_code AS TEXT
CHECK(
   VALUE ~ '^\\d{5}$'
OR VALUE ~ '^\\d{5}-\\d{4}$'
);

CREATE TABLE us_snail_addy (
  address_id SERIAL PRIMARY KEY,
  street1 TEXT NOT NULL,
  street2 TEXT,
  street3 TEXT,
  city TEXT NOT NULL,
  postal us_postal_code NOT NULL
);

�ߴ���

CREATE DOMAIN���ޥ�ɤ�ɸ��SQL�˽�򤷤Ƥ��ޤ���

��Ϣ����

ALTER DOMAIN, DROP DOMAIN