标签:dom type count HERE 插入 模式 应用 exp 空值
CREATE DOMAIN name [AS] data_type [ DEFAULT expression ] [ constraint [ ... ] ] where constraint is: [ CONSTRAINT constraint_name ] { NOT NULL | NULL | CHECK (expression) }
CREATE DOMAIN 创建一个新的数据域。 定义域的用户成为其所有者。
如果给出一个模式名称(比如,CREATE DOMAIN myschema.mydomain ...), 那么该域是在指定的模式中创建的。否则它会在当前模式中创建。 域名字必需在其所在模式中的现有类型和域中唯一。
域可以便于我们把不同表之间的公共域抽取到一个位置进行维护。 比如,一个电子邮件地址字段可能在多个表中使用,所有的都是同样的属性。 我们可以定义并使用一个域,而不是分别设置每个表的约束。
缺省表达式将用在任何不为该字段声明数值的插入操作。 如果为特定的字段声明了缺省值,那么它覆盖任何和该域相关联的缺省值。 然后,域的缺省覆盖任何与下层数据类型相关的缺省。
目前,CHECK 表达式不能包含子查询,也不能引用除 VALUE 之外的变量。
这个例子创建了 country_code 数据类型并且在一个表定义中使用了该类型:
CREATE DOMAIN country_code char(2) NOT NULL; CREATE TABLE countrylist (id integer, country country_code);
标签:dom type count HERE 插入 模式 应用 exp 空值
原文地址:https://www.cnblogs.com/fanweisheng/p/11077515.html