MySQL 数据类型的属性 约束 三大范式
数据表
是数据库的基本组成元素,以记录行和字段列组成的二维结构用于存储数据。
表头 | 字段名1 | 字段名2 |
---|---|---|
数据单元 | 数据1 | 数据2 |
列如:
学号 | 姓名 | 专业 |
---|---|---|
201911250101 | 小王 | 软件技术 |
MySQL中数据类型的属性
MySQL 关键字 | 含义 |
---|---|
null | 数据列中可包含null值 |
not null | 数据列中不允许包含空值 |
default | 默认值 |
primary key | 主键 |
auto_increment | 自动递增 |
unsigned | 无符号 |
character set <字符集名> | 指定一个字符集 |
zerofill | 数值类型前自动用0 补足位数 |
comment |
数据表设置
主要设置字段名称、字段类型、字段属性。
根据需求一般还要使用约束、索引、主键、外键等功能属性。
列如:
MySQL 的约束
mysql的约束是 ☞ 对数据表数据的一种约束行为,约束主要完成对数据的检验,如果有相互依赖数据,保证该数据不被删除。
mysql的约束主要包括主键约束、外键约束、唯一约束、非空约束、默认值约束。
1、主键约束 (primary key)
唯一的标识一行和作为一个可以被外键有效引用的对象。通常在数据表中将一个字段或多个字段组合设置为各种不同的值,以便能唯一的标识表中的每一条记录(保证数据的唯一性),这样的字段或多个字段成为数据表的主键。
注:主键约束的字段不能为空
2、外键约束(foreign key)
外键约束保证了数据库中的各个数据表中数据的一致性和正确性。
简单讲就是 a 表中的一个字段 引用 b表中的主键字段 则引用该数据中的这个字段或字段组合就称为外键。
3、唯一约束(unique)
一个数据表中只能有一个主键。
4、非空约束(not null)
指定为not null 的字段 不能输入 null值。
数据表中的null值 通常表示值未知或未定义,null值不同于 0、空格、或长度为0的字符串。
默认情况下、不指定非空约束、所有字段名都可以为null。
5、默认值约束
默认值约束表示当数据表中某个字段不输入值时,自动为其添加一个已经设置好的值。(可自定义默认值)
数据库设计的三大范式
第一范式:
数据表中每一列属性都是不可再分的属性性,确保**每一列的原子性**。
第二范式:
满足第一范式后,要求表中所有列都必须依赖于主键,而不能有任何一列与主键没有联系。
即一张表描述一件事情。
第三范式:
保证每列都和主键直接相关
第三范式又和第二范式相关,用第三范式的定义描述第三范式就是,数据库表中如果不存在非关键字段任一候选关键字段的传递函数依赖则符合第三范式,所谓传递函数依赖指的是如果存在"A–>B–>C"的决定关系,则C传递函数依赖于A。也就是说表中的字段和主键直接对应不依靠其他中间字段,说白了就是,决定某字段值的必须是主键。
我在这里只稍微的将概念讲了出来(因为懒)。
大家需要再去多了解 可以去看一下这篇博客。
https://www.cnblogs.com/gongcheng-/p/10901824.html#_label0 是关于数据库三大范式的。
自言
理论知识,虽然枯燥,但并非是无用的。
每天一点一点,复习,预习。