约束概述
约束其实就是一种限制,用于修饰表中的列. 通过这种限制来保证表中数据的正确性、有效性和完整性。
约束的类型
1.1 主键的作用
用来标注一条记录的唯一性,每个表都应该有一个主键,并且每个表只能有一个主键。有些记录的 name,age,score 字段的值都一样时,那么就没法区分这些数据,造成数据库的记录冗余不唯一,这样就不方便管理数据
哪个字段应该作为表的主键? 通常不用业务字段作为主键,单独给每张表设计一个id的字段,把id作为主键。主键是给数据库和程序使用的,不是给最终的客户使用的。所以主键有没有含义没有关系,只要不重复,非空就行。
1.2 创建主键
创建主键方式:
具体操作:
1.2.1 创建表用户表, 包含字段(id, name)将id做为主键
方式1: 建表时在字段的约束区添加主键约束
执行如下:
方式2: 建表时在约束区添加主键约束
执行如下:
方式3: 创建完表后,通过修改表结构添加主键约束
执行如下:
1.2.2 创建表用户表, 包含字段(id, name) 将id和name做为联合主键
上面我们将 id 作为单一主键,而还有多个字段作为 联合主键的情况,如下:
image-
image-
“注意 : 一张表中只有一个主键 , 主键可以为多个字段 , 不过我们一般增加一个字段 id 来作为主键. ”
执行如下:
1.3 删除主键
ALTER TABLE 表名 DROP PRIMARY KEY;
具体操作:
执行如下:
1.4 主键自增 AUTO_INCREMENT
主键如果让我们自己添加很有可能重复,我们通常希望在每次插入新记录时,数据库自动生成主键字段的值 表示自动增长(字段类型是整型数字)
具体操作:
创建学生表user5, 包含字段(id, name)将id做为主键并自动增长
执行如下:
DELETE和TRUNCATE的区别
下面我们来演示一下:
演示 DELETE 删除表数据 对于 自增字段的影响
演示 TRUNCATE 删除表数据 对于 自增字段的影响
修改表的主键自增初始值
在这张表中这个字段的值不能重复

2.1 唯一约束的基本格式
字段名 字段类型 UNIQUE
2.2 实现唯一约束
具体操作:
执行如下:
被修饰的这个字段必须设置值,不能是NULL
3.1 非空约束的基本格式
字段名 字段类型 NOT NULL
3.2 实现非空约束
具体操作:
执行如下:
往表中添加数据时,如果不指定这个字段的数据,就使用默认值
4.1 默认值格式
字段名 字段类型 DEFAULT 默认值
4.2 实现字段默认值
具体操作:
执行如下:

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/176616.html