代考首页 | 代考价格 | 代考流程 | 证书查询 | 信誉评价 | 代考论坛 | 海外港台代考价格 | 题库报价
  思科CISCO | 微软MICROSOFT | 华为HCNE | ORACLE认证 | SUN认证 | CIW认证 | IBM认证 | LPI认证 | CCNA专题 | MCSE专题 | ADOBE | 仿真题库
   会员登陆
用户:
密码:

   代考详细流程

代考地图
代考思科CCNA认证
代考思科CCNP认证
代考微软MCP认证
代考微软MCSE2000
代考微软MCSE2003
代考微软MCSD.NET
代考LPI认证
代考微软全能认证
代考思科微软全能认证
代考思科全能认证
代考思科CCDA认证
代考思科CCDP认证
代考思科CCIP认证
代考思科CCSP认证
代考思科CCVP认证
代考微软MCTS技术专家
代考MCITP微软IT专家
代考MCPD专业开发人员

   IT代考--本站服务
  itsky100.comIT认证代考 联盟的 代考 机构,提供 CCNA 代考 ,MCSE 代考 ,MCP 代考 ,CCNP 代考 ,JAVA 代考 ,ORACLE 代考 等各种IT 认证替考 服务。
  免费提供 IT认证 学习资料 考试题库 CCNA CCNP JAVA CIW MCSE MCSD教学资料 免费下载。
  IT认证代考 ,具体操作在我们的考试中心进行,通过百分百,请您绝对放心。
 
 
 
 
 
 
  首页>>ORACLE认证>>正文
 
Oracle数据库的完整性 约束规则
完整性约束用于增强数据的完整性,Oracle提供了5种完整性约束:

    Check
    NOT NULL
    Unique
    Primary
    Foreign key

  完整性约束是一种规则,不占用任何数据库空间。完整性约束存在数据字典中,在执行SQL或PL/SQL期间使用。用户可以指明约束是启用的还是禁用的,当约束启用时,他增强了数据的完整性,否则,则反之,但约束始终存在于数据字典中。

  禁用约束,使用ALTER语句

ALTER TABLE table_name DISABLE CONSTRAINT constraint_name;

  或

ALTER TABLE policies DISABLE CONSTRAINT chk_gender

  如果要重新启用约束:

ALTER TABLE policies ENABLE CONSTRAINT chk_gender

  删除约束

ALTER TABLE table_name DROP CONSTRAINT constraint_name

  或

ALTER TABLE policies DROP CONSTRAINT chk_gender;

  Check 约束

  在数据列上Check 约束需要一个特殊的布尔条件或者将数据列设置成TRUE,至少一个数据列的值是NULL,Check约束用于增强表中数据内容的简单的商业规则。用户使用 Check约束保证数据规则的一致性。Check约束可以涉及该行同属Check约束的其他数据列但不能涉及其他行或其他表,或调用函数SYSDATE, UID,USER,USERENV。如果用户的商业规则需要这类的数据检查,那么可以使用触发器。Check约束不保护LOB数据类型的数据列和对象、嵌套表、VARRY、ref等。单一数据列可以有多个Check约束保护,一个Check约束可以保护多个数据列。

  创建表的Check约束使用CREATE TABLE语句,更改表的约束使用ALTER TABLE语句。

  语法:

CONSTRAINT [constraint_name] CHECK (condition);

  Check约束可以被创建或增加为一个表约束,当Check约束保护多个数据列时,必须使用表约束语法。约束名是可选的并且如果这个名字不存在,那么oracle将产生一个以SYS_开始的唯一的名字。

  例:

CREATE TABLE policies (policy_id NUMBER, holder_name VARCHAR2(40), gender VARCHAR2(1) constraint chk_gender CHECK (gender in ('M','F'), marital_status VARCHAR2(1), date_of_birth DATE, constraint chk_marital CHECK (marital_status in('S','M','D','W')) );

  NOT NULL约束

  NOT NULL约束应用在单一的数据列上,并且他保护的数据列必须要有数据值。缺省状况下,ORACLE允许任何列都可以有NULL值。某些商业规则要求某数据列必须要有值,NOT NULL约束将确保该列的所有数据行都有值。

  例:

CREATE TABLE policies (policy_id NUMBER, holder_name VARCHAR2(40) NOT NULL, gender VARCHAR2(1), marital_status VARCHAR2(1), date_of_birth DATE NOT NULL );

  对于NOT NULL的ALTER TABLE语句与其他约束稍微有点不同。

ALTER TABLE policies MODIFY holder_name NOT NULL
唯一性约束(Unique constraint)

  唯一性约束可以保护表中多个数据列,保证在保护的数据列中任何两行的数据都不相同。唯一性约束与表一起创建,在唯一性约束创建后,可以使用ALTER TABLE语句修改。

  语法:

column_name data_type CONSTRAINT constraint_name UNIQUE

  如果唯一性约束保护多个数据列,那么唯一性约束要作为表约束增加。语法如下:

CONSTRAINT constraint_name (column) UNIQUE
USING
INDEX TABLESPACE (tablespace_name)
STORAGE (stored clause)

  唯一性约束由一个B-tree索引增强,所以可以在USING子串中为索引使用特殊特征,比如表空间或存储参数。CREATE TABLE语句在创建唯一性约束的同时也给目标数据列建立了一个唯一的索引。

CREATE TABLE insured_autos (policy_id NUMBER CONSTRAINT pk_policies PRIMARY KEY, vin VARCHAR2(10), coverage_begin DATE, coverage_term NUMBER, CONSTRAIN unique_auto UNIQUE (policy_id,vin)
USING
INDEX TABLESPACE index STORAGE (INITIAL 1M NEXT 10M PCTINCREASE 0) );

本新闻共4页,当前在第1页  1  2  3  4  

 

 

版权所有 国际IT认证代考联盟网

Copyright (C) 2006 www.ITSKY100.com All rights reserved