Provided by:
manpages-zh_1.5-1_all 
NAME
CREATE DOMAIN - 定義一虓s域
SYNOPSIS
CREATE DOMAIN name [AS] data_type
[ DEFAULT expression ]
[ constraint [ ... ] ]
where constraint is:
[ CONSTRAINT constraint_name ]
{ NOT NULL | NULL | CHECK (expression) }
DESCRIPTIONyz
CREATE DOMAIN 創建一虓s的數據域。 定義域的使用者成為其所有者。
如果給出一蚍狾’W稱(比如,CREATE DOMAIN myschema.mydomain ...),
那麼該域是在指定的模式中創建的。否則它會在當前模式中創建。
域名字必需在其所在模式中的現有類型和域中唯一。
域可以便於我怬滮ㄕP表之間的公共域抽取到一茼鼽m進行維護。 比如,一-
蚢q子郵件地址字段可能在多茠矰尹洏峞A所有的都是同樣的屬性。 我-
怚i以定義並使用一荌魽A而不是分別設置每茠磲漪蠽禲C
PARAMETERS數
name n創建的域名字(可以有模式袡╮^。
data_type
域的下層數據類型。它可以包含數組聲明字。
DEFAULT expression
DEFAULT 子句為域數據類型的字段聲明一蚢w設C 該-
O任何不含變量的表達式(但不允許子查詢)。
預設表達式的數據類型必需匹配域的數據類型。如果沒有聲明預設A
那麼預設N是空C
預設表達式將用在任何不為該字段聲明數煽﹞J操作。
如果為特定的字段聲明了預設A那麼它覆蓋任何和該域相關聯的預設C
然後,域的預設覆蓋任何與下層數據類型相關的預設。
CONSTRAINT constraint_name
一茯蠽籅漸i選名稱。如果沒有聲明,系統生成一茼W字。
NOT NULL
這荌鴘獐不允許為 NULL。
NULL 這荌鴘獐允許為空。它是預設。
這茪l句只是用於和非標準的 SQL 數據庫相容用。 我-
怳ㄚ媊釵b新的應用中使用它。
CHECK (expression)
CHECK 子句聲明完整性約束或者是測試,域地數眸滓”炯o些n求。
每茯蠽竷眸楓O一茈穻角@茈牯葭痕G的表達式。它應該使用名字 VALUE
來引用被測試的數C
目前,CHECK 表達式不能包含子查詢,也不能引用除 VALUE
之外的變量。
EXAMPLESl
這茖狺l創建了 country_code 數據類型並且在一茠磼w義中使用了該類型:
CREATE DOMAIN country_code char(2) NOT NULL;
CREATE TABLE countrylist (id integer, country country_code);
COMPATIBILITYe性
CREATE DOMAIN 命令符合 SQL 標準。
SEE ALSO見
DROP DOMAIN [drop_domain(7)]
者
Postgresql <laser@pgsqldb.org>