MySQL数据类型--与MySQL零距离接触 3-2 外键约束的要求解析

 

 

列级约束:只针对某一个字段

表级约束:约束针对2个或2个以上的字段

约束类型是按功能来划分。

 

外键约束:保持数据一致性,完整性。实现数据表的一对一或一对多的关系。这就是把MySQL称为关系型数据库的根本原因。

1、

子表:具有外键列的表

父表:子表所参照的表

2、数据表的存储引擎禁止使用临时表

3、外键列:曾经加载 foreign关键词的那一列

4、参照列没有索引会自动创建,外键列没有索引不会自动创建

 

存储引擎默认的是什么?如果不是InnoDB,如何修改?

找到MySQL配置文件my.ini

 

修改以后,重启数据库。

 

进入MySQL:

第一个要求到达了,接下来需要有相似的数据类型。上边的表中是一个省份表,只有id和省份名称。

重新创建一个表:用户,字段有用户id,用户名,用户所在省份并且是字符类型。有了关系型数据库,只需要存储省份的编号即可。

做修改后:

 

这里的users就是子表,所参照的provinces就是父表。

pid外键列  id参照列,他们的数据类型在数字情况下必须相同,字符时可以不同。

id设置了主键,主键在创建的同时会自动的创建索引。

查看索引:

在子表中,系统自动的为pid创建了索引。

 

最后查看一下表users:

 

posted @ 2017-06-13 15:33  九许尘歌  阅读(235)  评论(0编辑  收藏  举报