美文网首页
数据库完整性

数据库完整性

作者: 有苦向瓜诉说 | 来源:发表于2017-12-13 22:34 被阅读9次
  • 实体完整性

    • 在CREATE TABLE时用PRIMARY KEY定义,分为列级约束条件(写在列后面)和表级约束条件(写在表的最后)。

    • 定义主码相当于UNIQUE+NOT NULL。

    • 全表扫描十分耗时,因此会自动在主码上建立一个索引。如B+树索引,提高效率。

  • 参照完整性

    • 在CREATE TABLE时用FOREIGN KEY定义那些列为外码,用REFERENCES指明这些外码参照那些表的主码。

    • 违约处理:拒绝执行(NO ACTION)为默认策略,级联操作(CASCADE),设置为空值。

    • 违约处理实例:ON DELETE CASCADE,ON UPDATE NO ACTION.

    • 对于参照完整性,除了定义外码,还应该定义外码列是否允许空值。

  • 用户自定义完整性

    • 属性上的约束条件:NOT NULL,UNIQUE,CHECK短语(检查列值满足某表达式)

    • 元组上的约束条件:使用CHECK短语,可以设置不同列之间的取值相互约束条件。

    • (check短语里的内容同where语句)

  • 完整性约束命名子句

    • 创建语法:CONSTRAINT<约束名><约束条件>,实例:CONSTRAINT name CHECK(age>30)

    • 修改完整性限制,在ALTER TABLE时修改

    • 删除:DROP CONSTRAINT name

    • 增加:ADD CONSTRAINT name CHECK(num BETWEEN 1 AND 100)

    • 更新:先删除原来的约束条件,在增加新的约束条件

  • 域的完整性约束

    • 域是具有相同数据类型的值的集合。

    • CREATE DOMAIN建立域以及约束就可以用来定义属性。实例:CREATE DOMAIN name CHAR(5) NOT NULL

    • 可以用ALTER DOMAIN修改域。

  • 断言

    • 使用断言指定一般性的约束,任何使断言不为真值的操作都会被拒绝执行。

    • 语句格式:CREATE ASSERTION <断言名><CHECK子句>

    • 删除断言:DROP ASSERTION<断言名>

  • 触发器

    • 触发器即事件-条件-动作规则。当特定事件发生,对条件进行检查,成立就执行动作。

    • 触发器只能定义在基本表上,不能定义在视图上。

    • 触发事件可以为INSERT,DELETE,UPDATE或者为其组合,以及UPDATE OF<触发列>

    • 触发器类型有行级触发器(FOR EACH ROW)和语句级触发器(FOR STATEMENT)

    • 格式


 CREATE TRIGGER <触发器名>
{BEFORE|AFTER} <触发事件> ON<表名> //指明触发器激活时间,
REFERENCING NEW|OLD ROW AS<变量>
FOR EACH {ROW|STATEMENT}
[WHEN<触发条件>]<触发动作体>

相关文章

  • 六、数据库安全与保护

    1.数据库完整性 什么是数据库完整性 数据库完整性是指数据库中数据的正确性和相容性。 完整性约束条件的作用对象 列...

  • 关系数据库维护4.0

    6.4 数据库的完整性 数据库的完整性是指数据的正确性和相容性。为维护数据库的完整性,DBMS必须能够: (1)提...

  • 数据库和表的基本操作

    1.对数据库操作 2.数据库引擎 3.数据完整性 实体完整性 引用完整性 域完整性 4.创建表操作 4.1 创建表...

  • 1_MySQL数据库1

    数据库的安装 服务启动 登陆数据库 sql 语言分类 常用命令 数据类型 实体完整性 域完整性 引用完整性 多表查...

  • 三、数据的完整性设计与实现

    1、数据的完整性 总结分析: 当前表中存在不准确、不一致的数据,则数据库失去了完整性 数据完整性破坏一般由数据库的...

  • 数据库的完整性

    数据库的完整性整理思维导图如下:

  • Mysql的范式

    数据库完整性:实体完整性:主键 唯一且不为空参照完整性:外键 可以为空用户自定义完整性:约束条件等 1.第一范式:...

  • 数据完整性

    数据完整性 要想了解这三类完整性约束,先要了解什么是数据完整性。 数据库中的数据是从外界输入的,而...

  • 数据库基础2

    一.并发控制--基本概念 二.数据库完整性约束 三.数据库安全 四.数据备份

  • 2018-10-30

    一、数据库的完整性 实体完整性设置主键 唯一建 标识列 域完整性 列的值的完整设置数据的类型 设置非空 引用完整...

网友评论

      本文标题:数据库完整性

      本文链接:https://www.haomeiwen.com/subject/rrhtwxtx.html