mysql 域完整性_MySQL数据的完整性 实体完整性(主键约束、唯一约束) 域完整性(非空、默认值约束) 参照完整性(外键约束)...

数据完整性

1、解释:保证用户输入的数据保存到数据库是正确的

2、如何添加数据完整性:在创建表的时候给表添加约束

*3、完成性分为:*1、实体完整性2、域完整性3、引用完整性

实体完整性

1、解释:表中的一个(一条记录)代表一个实体(entity)

2、作用:标识每一行数据不重复。行级约束。

3、约束类型:1、主键约束(primary key)2、唯一约束(unique)3、自动增长列(auto_increment)

主键约束:

1、特点:表中要有一个主键,数据唯一,且不能为null

2、添加方式:

a:CREATE TABLE 表名(字段1 数据类型 primary key,字段2 数据类型);

b:CREATE TABLE 表名(字段1 数据类型,字段2 数据类型,primary key(要设置成主键的字段));

c:CREATE TABLE 表名(字段1 数据类型,字段2 数据类型,primary key(主键1,主键2));

如果两个字段同时相同时,就违反了联合主键的约束

先创建表再去修改主键

ALTER TABLE student ADD CONSTRAINT PRIMARY KEY(id);

唯一约束

特点:制定列的数据不能重复,并且不可以为空值

格式:alter table student(字段1 数据类型,字段2 数据类型 UNIQUE)

自动增长列

特点:指定列的数据自动增长(即使数据删除,还是从删除的序号往下增长)

格式:CREATE TABLE student(字段1 数据类型 PRIMARY KEY AUTO_INCREMENT,字段2 数据类型 UNIQUE)

域完整性

使用:限制此单元格的数据正确,不对照此列的其他单元格比较(域代表当前单元格)

1、非空约束

CREATE TABLE student(字段1 数据类型 PRIMARY KEY AUTO——INCREMENT,字段2 数据类型 UNIQUE NOT NULL);

2、默认值约束

CREATE TABLE student(字段1 数据类型 PRIMARY KEY AUTO——INCREMENT,字段2 数据类型 UNIQUE NOT NULL DEFAULT ‘值’ );

参照完整性

解释:1、是指表与表之间的一种对应关系

2、通常情况下可以通过设置两表之间的主键、外键关系,或者编写两表的触发器来实现。

3、有对应的参照完整性的两张表,在对他们的数据插入、更新、删除的过程中,系统都会将被修改的表格与另一张对应表格进行对照,从而阻止一些不正确的数据操作。

注意:

1、数据库的主键和外键的类型必须要一致。

2、两个表必须要是InnoDB类型。

3、设置参照完整性后,外键当中的内值,必须是主键当中的内容。

4、一个表当中的字段设置为主键,设置主键的表为主表

CREATE TABLE student(sid int PRIMARY KEY,name varchar(20),sex varchar(10) DEFAULT '男');

5、创建表时,设置外键,设置外键的为字表

CREATE TABLE score(sid int,scroe double,CONSTRINT stu_sco_sid FOREIGN KEY(sid) REFERENCES student(sid))

3b0e20ca564759727186ab06185f4e2e.png

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值