Oracle:约束_表关系_多对多.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Oracle:约束_表关系_多对多

本章目标 数据完整性 主键、外键、非空、默认 Check 添加、删除约束 启用、禁用约束 表关系与主外键约束及关联查询 一对一 一对多 多对多 数据完整性 存储在数据库中的所有数据值均正确的状态。 如果数据库中存储有不正确的数据值,则该数据库称为已失去数据完整性。 数据完整性(Data Integrity)是指数据的精确性(Accuracy)和可靠性(Reliability)。 它是应防止数据库中存在不符合语义规定的数据和防止因错误信息的输入输出造成无效操作或错误信息而提出的。 数据完整性-1 数据类型 年龄使用什么类型? 格式是否正确 身份证号,可以是15位也可以是18位 范围 性别可选择“男”、“女”、“未知” 是否允许重复 银行卡号不允许重复 特定业务要求 银行贷款 数据完整性-2 实体完整性 域完整性 引用完整性 自定义完整性 实体完整性 实体完整性 实体完整性要求每一个表中的主键字段都不能为空或者重复的值。 实现方法 唯一约束 主键约束 域完整性 域完整性 域完整性指列的值域的完整性。如数据类型、格式、值域范围、是否允许空值等 实现方法 限制数据类型 外键约束 默认值 非空约束 引用完整性 引用完整性 也称之为参照完整性,当更新、删除、插入一个表中的数据时,通过参照引用相互关联的另一个表中的数据,来检查对表的数据操作是否正确。 引用完整性要求关系中不允许引用不存在的实体。 引用完整性与实体完整性是关系模型必须满足的完整性约束条件。 实现方法 外键约束 自定义完整性 自定义完整性 用户自定义完整性指针对某一具体关系数据库的约束条件,它反映某一具体应用所涉及的数据必须满足的语义要求。 实现方法 存储过程 触发器 主键约束的特点: 唯一、不可重复。 非空NULL。 其他特点 用户不关心。 对用户没有任何意义。但对程序开发人员,意义重大。 创建主键约束的语法: 有三种: 第一种,在创建表时,直接指定主键 SQL create global temporary table t1( id int primary key, --这儿的primary key指定了id为主键 name varchar(30) ); 第二种,在create中单独一行 create global temporary table t3( id int, name varchar(30), --单独一行创建主键。此时必须要指定主键的名称。 constraint t3_pk primary key(id) ); 第三种,通过修改表创建主键 --通过修改表,创建主键 create global temporary table t4( id int, name varchar(30) ); --修改表,添加主键 alter table t4 add constraint t4_pk primary key(id); 案例: 创建主键: CREATE TABLE order_status2 ( id INTEGER CONSTRAINT order_status2_pk PRIMARY KEY, status VARCHAR2(10), last_modified DATE DEFAULT SYSDATE ); 可以通过以下两个系统视图,查询约束信息: user_constraints -- 表上的约束 User_cons_columns –列上的约束 主键约束: 向主键字段写入一个null值,将会出现以下错误: 在行 23 上开始执行命令时出错: insert into t4(id,name) values(null,jack) 错误报告: SQL 错误: ORA-01400: 无法将 NULL 插入 (HR.T4.ID) 01400. 00000 - cannot insert NULL into (%s) *Cause: *Action: 将主键中写入重复的数据,将出现以下错误 insert into t4(id,name) values(88,jack) 错误报告: SQL 错误: ORA-00001: 违反唯一约束条件 (HR.T4_PK) 00001. 00000 - unique constraint (%s.%s) violated *Cause: An UPDATE or INSERT statement attempted to insert a duplicate key. For Trusted Oracle configured in DBMS MAC mode, you may see

文档评论(0)

woai118doc + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档