今日学习目标
- 正式学习MySQL数据库语句。
文章目录
学习内容
-
自增特性
-
约束条件之外键
-
查询关键字
一、自增特性
自增约束一般都是与主键约束一起使用。
这种方式是使用数据库提供的自增数值型字段作为自增主键,它的优点是:
(1)数据库自动编号,速度快,而且是增量增长,按顺序存放,对于检索非常有利;
(2)数字型,占用空间小,易排序,在程序中传递也方便;
(3)如果通过非系统增加记录时,可以不用指定该字段,不用担心主键重复问题。
因为是系统自增所以当我们人为打断顺序的话,系统是不会修改的
自增不会随着数据的删除而回退
二、约束条件之外键
外键的定义
如果同一个属性字段X 在表一中是主键,而在表二中不是主键,则字段X称为表二的外键。
创建外键约束,保证数据的完整性和一致性
注意:
- 与外键关联的主表的字段必须设置为主键。
- 要求从表不能是临时表,主从表的字段具备相同的数据类型、字符长度和约束。
外键关系
- 一对多
- 多对多
- 一对一
- 没有关系
外键约束创建
-
创建外键约束的条件
MySQL数据库外键的创建,需要满足以下四个条件,否则会被MySQL数据库拒绝:
1、创建外键的表和列存在
2、组成外键的列存在索引
3、必须指定数据表的引擎为InnoDB
4、外键字段和关联字段,数据类型必须一致 -
在创建数据表时创建外键约束
在创建数据表时创建外键约束,只需要在创建数据表的create语句后面,使用foreign key关键字指定本表的外键字段,使用reference关键字指定关联表的关联字段,并且明确约束行为即可。
创建外键约束的SQL语句示例如下:create table student ( id int primary key auto_increment, name varchar(20), department varchar(20) , index (id) ); create table grade ( id int primary key auto_increment, Sid int, Cid int, score int, foreign key (Sid) references student(id) );
-
foreign ke