CREATE DOMAIN - 定义一个新域
SYNOPSIS
CREATE DOMAIN name [AS] data_type
[ DEFAULT expression ]
[ constraint [ ... ] ] where constraint is: [ CONSTRAINT constraint_name ]
{ NOT NULL | NULL | CHECK (expression) }
DESCRIPTION 描述
CREATE DOMAIN 创建一个新的数据域。 定义域的用户成为其所有者。
如果给出一个模式名称(比如,CREATE DOMAIN myschema.mydomain ...), 那么该域是在指定的模式中创建的。否则它会在当前模式中创建。 域名字必需在其所在模式中的现有类型和域中唯一。
域可以便于我们把不同表之间的公共域抽取到一个位置进行维护。 比如,一个电子邮件地址字段可能在多个表中使用,所有的都是同样的属性。 我们可以定义并使用一个域,而不是分别设置每个表的约束。
PARAMETERS 参数
- name
- 要创建的域名字(可以有模式修饰)。
- data_type
- 域的下层数据类型。它可以包含数组声明字。
- DEFAULT expression
- DEFAULT 子句为域数据类型的字段声明一个缺省值。 该值是任何不含变量的表达式(但不允许子查询)。
缺省表达式的数据类型必需匹配域的数据类型。如果没有声明缺省值, 那么缺省值就是空值。缺省表达式将用在任何不为该字段声明数值的插入操作。 如果为特定的字段声明了缺省值,那么它覆盖任何和该域相关联的缺省值。 然后,域的缺省覆盖任何与下层数据类型相关的缺省。
- CONSTRAINT constraint_name
- 一个约束的可选名称。如果没有声明,系统生成一个名字。
- NOT NULL
- 这个域的数值不允许为 NULL。
- NULL
- 这个域的数值允许为空。它是缺省。
这个子句只是用于和非标准的 SQL 数据库兼容用。 我们不建议在新的应用中使用它。 - CHECK (expression)
- CHECK 子句声明完整性约束或者是测试,域地数值必须满足这些要求。 每个约束必须是一个生成一个布尔结果的表达式。它应该使用名字 VALUE 来引用被测试的数值。
目前,CHECK 表达式不能包含子查询,也不能引用除 VALUE 之外的变量。
EXAMPLES 例子
这个例子创建了 country_code 数据类型并且在一个表定义中使用了该类型:
CREATE DOMAIN country_code char(2) NOT NULL;
CREATE TABLE countrylist (id integer, country country_code);
CREATE DOMAIN - 定义一个新域的更多相关文章
- CREATE FUNCTION - 定义一个新函数
SYNOPSIS CREATE [ OR REPLACE ] FUNCTION name ( [ argtype [, ...] ] ) RETURNS rettype { LANGUAGE lang ...
- CREATE AGGREGATE - 定义一个新的聚集函数
SYNOPSIS CREATE AGGREGATE name ( BASETYPE = input_data_type, SFUNC = sfunc, STYPE = state_data_type ...
- CREATE OPERATOR - 定义一个新的操作符
SYNOPSIS CREATE OPERATOR name ( PROCEDURE = funcname [, LEFTARG = lefttype ] [, RIGHTARG = righttype ...
- CREATE TRIGGER - 定义一个新的触发器
SYNOPSIS CREATE TRIGGER name { BEFORE | AFTER } { event [ OR ... ] } ON table [ FOR [ EACH ] { ROW | ...
- CREATE RULE - 定义一个新的重写规则
SYNOPSIS CREATE [ OR REPLACE ] RULE name AS ON event TO table [ WHERE condition ] DO [ INSTEAD ] { N ...
- CREATE TYPE - 定义一个新的数据类型
SYNOPSIS CREATE TYPE name AS ( attribute_name data_type [, ... ] ) CREATE TYPE name ( INPUT = input_ ...
- CREATE TABLE - 定义一个新表
SYNOPSIS CREATE [ [ GLOBAL | LOCAL ] { TEMPORARY | TEMP } ] TABLE table_name ( { column_name data_ty ...
- CREATE SCHEMA - 定义一个新的模式
SYNOPSIS CREATE SCHEMA schemaname [ AUTHORIZATION username ] [ schema_element [ ... ] ] CREATE SCHEM ...
- CREATE GROUP - 定义一个新的用户组
SYNOPSIS CREATE GROUP name [ [ WITH ] option [ ... ] ] where option can be: SYSID gid | USER usernam ...
随机推荐
- HDU - 2066 一个人的旅行(最短路径)(模板)
d.每组的第一行是三个整数T,S和D,表示有T条路,和草儿家相邻的城市的有S个(草儿家到这个城市的距离设为0),草儿想去的地方有D个: 求D个城市中距离草儿家最近的距离. s.进行1次单源最短路,找出 ...
- ssh 无密码互通
节点n1 n2 n3 互通 第一步:n1->n2互通 admin@n1 > ssh-keygen -d
- Python解压缩ZIP格式
转自:http://blog.csdn.net/linux__kernel/article/details/8271326 很多人在Google上不停的找合适自己的压缩,殊不知Py的压缩很不错.可以试 ...
- maven项目没有错,但是在项目头上有红叉的解决方法
转自:https://blog.csdn.net/myblog_dhy/article/details/41695107 我在使用maven的过程中,要导入某个maven项目,导入的过程中会弹出一个框 ...
- bzoj 2456: mode【瞎搞】
这题加个#include都会MLE-- 神思路,每个数抵消宇哥和它不同的数,最后剩下的就是众数 #include<cstdio> int n,la,x,tot; int main() { ...
- 浅谈扩展欧几里得[exgcd] By cellur925
关于扩展欧几里得从寒假时就很迷,抄题解过了同余方程,但是原理并不理解. 今天终于把坑填上了qwq. 由于本人太菜,不会用markdown,所以这篇总结是手写的(什么).(字丑不要嫌弃嘛) ****** ...
- 设置Google搜索在新的标签页打开
Google搜索的结果,默认情况下点击进入是在本标签页打开的,这样就很麻烦, 可以在搜索结果的页面中进行设置,让它在新的标签页显示 搜索结果设置->搜索设置->新的标签页打开
- 51nod 1138 连续整数的和
1138 连续整数的和 基准时间限制:1 秒 空间限制:131072 KB 分值: 10 难度:2级算法题 收藏 关注 给出一个正整数N,将N写为若干个连续数字和的形式(长度 >= 2). ...
- 条件DP UVA 672 Gangsters
题目传送门 题意:n个歹徒进饭店,可变化宽度的门,范围[0, k],每个歹徒进门在ti时间进门,身材si,进去后有pi的成功值,问最大的成功值 分析:首先按照进门时间排序,dp[i][j] 表示第i个 ...
- spark yarn cluster模式下任务提交和计算流程分析
spark可以运行在standalone,yarn,mesos等多种模式下,当前我们用的最普遍的是yarn模式,在yarn模式下又分为client和cluster.本文接下来将分析yarn clust ...