InnoDB---约束

本文详细介绍了InnoDB数据库中的数据完整性,包括实体完整性、域完整性和参照完整性,并探讨了约束的创建与区别,如主键、唯一索引和外键约束。此外,还提到了触发器、视图、物化视图以及分区表的相关概念,特别是分区表在OLTP和OLAP应用中的性能影响。
摘要由CSDN通过智能技术生成

一、数据完整性

  1. 实体完整性:保证表中有一个主键。
    要求每个关系(表)有且仅有一个主键,每一个主键值必须唯一,而且不允许为“空”(NULL)或重复。

  2. 域完整性:保证数据每列的值满足特定的条件。
    指数据库表中的列必须满足某种特定的数据类型或约束。其中约束又包括取值范围、精度等规定。表中的CHECK、FOREIGN KEY 约束和DEFAULT、 NOT NULL定义都属于域完整性的范畴。

  3. 参照完整性:保证两张表之间的关系。
    定义建立关系之间联系的主关键字与外部关键字引用的约束条件,当增加、修改或删除数据库表中记录时,可以借助参照完整性来保证相关联表之间数据的一致性 。

二、约束

  1. 约束的创建

    表创建时创建
    利用"alter table"命令进行创建

    主键(Primary Key)的约束名固定为:PRIMARY
    唯一索引(Unique Key)的默认约束名列名相同
    外键约束名(Foreign Key)也有一个神秘的默认名称

2.约束也索引的区别

用户创建了一个唯一索引就创建了一个唯一约束。

约束是一个逻辑的概念,用来保证数据的完整性。
索引是一个数据结构,既有逻辑上的概念,在数据库中还代表着物理存储的方式。

三、触发器

用户可以
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值