zoukankan      html  css  js  c++  java
  • oracle之check约束小结

    一下是Ocp考试指导中,对于oracle约束的描述:

    The constraint types supported by the Oracle database are as follows:
    UNIQUE
    NOT NULL
    PRIMARY KEY
    FOREIGN KEY
    CHECK
    Constraints have names. It is good practice to specify the names with a standard naming convention, but if they are not explicitly named, Oracle will generate names.

    由上可知,每一个约束都有名称,最好的做法是在定义约束是显式的命名,如果没有显式命名,那么系统会提供一个名字。

    Check Constraints
    A check constraint can be used to enforce simple rules, such as that the value entered in a column must be within a range of values. The rule must be an expression which will evaluate to TRUE or FALSE. The rules can refer to absolute values entered as literals or to other columns in the same row and may make use of some functions.
    As many check constraints as you want can be applied to one column, but it is not possible to use a subquery to evaluate whether a value is permissible or to use functions such as SYSDATE.

    check约束可用来执行简单的规则,例如在列中输入的值范围必须在一个数据范围之间。这个表达式结果必须为真或者假。某一行可以有多个check约束,但是不能使用子查询或者某些函数如sysdate。

    CHECK Constraint

    The chack constraints defines a condition that each row must satisfy . The condition can use the same constructs as the query conditions,with the following exceptions:

    References to the CURRVAL,NEXTVAL,LEVEL,and ROWNUM pseudocolumns Calls to SYSDATE,UID,USER,and UESRENV functions

    Queries that refer to other values in other rows

    A single column can have multiple CHECK constraints that refer to the column in its definition. There is no limit to the number of CHECK constraints that you can define on a column.CHECK constraints can be defined at the column level or table level.

    check约束必须作用在表中定义的字段上,视图中不可使用check约束,以下情况不可使用在check约束中:

    CURRVAL,NEXTVAL,LEVEL,ROWNUM伪列,SYSDATE,UID,USER, UESRENV函数不能使用在check约束中,

    涉及其他行值得查询。

    单个列可以定义多个参考列的check约束,单个列所能定义的check约束数据没有限制。check约束可以定义列级的,也可以定义表级的。

  • 相关阅读:
    DevOps工具链
    内网穿透工具
    SVN无法检出项目
    IDEA安装插件
    实习过程中学到关于各版本操作系统的知识(2)
    实习过程中学到关于各版本操作系统的知识(1)
    lib1funcs.S(用于解决裸板实现 printf 中的问题: undefined reference to `__aeabi_uidivmod' 和 undefined reference to `__aeabi_uidiv')
    交叉编译工具参数笔记
    vim 源码安装
    Git clone 下载慢解决方案
  • 原文地址:https://www.cnblogs.com/upcyaya/p/4834850.html
Copyright © 2011-2022 走看看