MySQL 第8章 数据库约束

第8章 数据库约束

8-1 数据库约束的简介
8-2 数据库约束之主键约束
8-3 数据库约束之唯一约束
8-4 数据库约束之非空约束
8-5 默认值的设定

8-1 数据库约束的简介

数据库的约束

对表中数据进行进一步的限制,保证数据的正确性有效性完整性

primary key:主键

unique:唯一

not null:非空

default:默认

foreign key:外键

8-2 数据库约束之主键约束

一、主键的作用:

1.主键用来唯一标识一条记录,每个表都应该有一个主键,并且每个表只能有一个主键

2、哪个字段应该作为表的主键?
通常不用业务字段作为主键,单独给每张表设计一个id字段,把id字段作为主键。主键是给数据库和程序使用的,不是给最终客户使用的。所以主键有没有含义没有关系,只要不重复,非空就行。

二、创建主键

主键: PRIMARY KEY

主键的特点:

  • 主键必须包含唯一的值;
  • 主键列不能包含NULL值

创建主键方式:

在创建表的时候给字段添加主键:
字段名 字段类型 PRIMARY KEY

三、删除主键

ALTER TABLE 表名 DROP PRIMARY KEY;

四、主键自增

  • AUTO_INCREMENT 表示自动增长(字段类型必须是整数类型)

扩展

  • 默认AUTO_INCREMENT的开始值是1,如果希望修改起始值,使用以下SQL语法:

  • ALTER TABLE 表名 AUTO_INCREMENT=起始值;

8、DELETE和TRUNCATE 的区别

DELETE:删除表中的数据,但不重复AUTO_INCREMENT的值

TRUNCATE摧毁表,重建表,AUTO_INCREMENT重置为1

8-3 数据库约束之唯一约束

1、唯一

在这张表中这个字段的值不能重复

2、唯一约束基本格式:

字段名 字段类型 UNIQUE

eg:创建英雄表hero3,包含字段(id,name)name这一列设置唯一的约束,不能出现同名的英雄。

CREATE TABLE hero3(
id INT,
name VARCHAR(29) UNIQUE
);

实现唯一约束,不能插入相同的值,
但是NULL没有值,所以不存在重复的值,
可以插入多个NULL

8-4 数据库约束之非空约束

1、非空:这个字段必须设置值,不能为NULL

2、非空约束的基本语法:字段名 字段类型 NOT NULL

3、可以和唯一约束搭配:字段名 字段类型 UNIQUE NOT NULL

8-5 默认值的设定

1、默认值:往表中添加数据时,如果不指定这个字段的数据,就使用默认值

2、基本语法结构:字段名 字段类型 DEFAULT 默认值

猜你喜欢

转载自blog.csdn.net/weixin_44411458/article/details/124350783
今日推荐