1. 1、本文档共16页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
_Oracle约束

Oracle数据库设计与建模 * 信息系:刘云 Oracle数据库原理与应用 Oracle数据库设计与建模 Oracle数据库设计与建模 Oracle约束 oracle提供5种约束 1、非空(NOT NULL)约束:所定义的列决不能为空 2、唯一(UNIQUE)约束:在表中每一行所定义的该列或该列的值不能相同 3、主键(PRIMARY KEY)约束:唯一标识表中的一行 4、外键(FOREIGN KEY)约束:用来维护子表和父表之间的应用完整性 5、条件(CHECK)约束:表中每行都要满足该约束条件 约束的定义 强加在表上的规则或者条件,确保数据库满足业务规则,保证数据的完整性。当对表进行DML或者DDL操作时,如果此操作会造成表中的数据违反约束条件或规则的话,系统会拒绝执行这个操作。 约束的功能 实现一些业务规则,防止无效的垃圾数据进入数据库,维护数据库的完整性(也就是正确性和一致性),从而使数据库的开发和维护都更加容易 完整性约束(主键约束) 实现主键约束的两种常用方法: 1、创建表的时候,在列中添加primary key 2、在创建好的表中,通过关键字constraint为表中的某一列添加约束 例1.1:create table A( id number(5) primary key, name varchar2(20) ); 在创建表的时候,在列中添加primary key(列级定义) 完整性约束(主键约束) 完整性约束(主键约束) 在创建表的时候,在列中添加primary key(表级定义) 例1.2:create table A( id number(5), name varchar2(20), constraint pk_a_id primary key(id) ); 完整性约束(主键约束) 在创建好的表中,通过constraint关键字为表中的某一列添加约束。 例2:alter table A add constraint PK_A_ID primary key(id) 外键约束 引用完整性约束。例3: create table student( --学生表 s_id number(5) primary key, s_name varchar2(20), s_id varchar2(5), constraint fk_stu foreign key(c_id) references team(c_id) ); create table class( --班级表 t_id varchar2(5) primary key, t_name varchar2(20) ); 外键约束 note: 建外键的表具有子父关系,且外键建在子表中 外键很好的保护两表之间的关系 外键值允许为空 插入有数据的值,外键中的值必须能够在父表中找到 非空约束 所约束的列不能为空 例4. create table student( id number(5) primary key, name varchar2(20) not null ); 另一种实现非空约束的方式 SQLalter table student modify name not null; 唯一约束 create table student( id number(2) primary key, name varchar2(10) unique --设置列“name”唯一约束 另一种方式实现唯一约束 SQLalter table student add constraint uk_stu unique(name); 表中每一行所定义的该列或该列的值不能相同 CHECK约束 表中每行都要满足该约束条件。在一列上可以定义任意多个条件约束。 例6 创建一张文秘表,要求如下: (1)女性; (2)年龄18~35岁之间 CHECK约束 create table clerk( id varchar2(5) primary key, name varchar2(20), age number, sex varchar2(2), constraint clerk_age_ck check(age between 18 and 35), constraint clerk_sex_ck check(sex=‘女’) ); 查看有关约束信息 1、利用数据字典user_constraints可以查看用户模式下的表的约束信息 SQLselect owner,constraint_nam

文档评论(0)

xcs88858 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档