mysql:数据库之外键的两个作用及总结

      近期自学数据库MySQL 。然后有个疑问 。一直不得其解 。查询了相关资料 。最后还是没有解决 。
      我的疑问是 "使用外键约束" ,然后我对 "外键" 这个词不是非常理解 。查询相关资料都是讲一些术语 。说外键的主要作用是:保持数据的一致性、完整性 。听得我是一头雾水 。
 
      关于外键 。我有自己的一些理解,可是不晓得是否正确,举个样例来表达我的看法:假如如今须要建立一个表,一个什么样的表呢?一个班级的学生个人信息表:

mysql:数据库之外键的两个作用及总结

文章插图
【mysql:数据库之外键的两个作用及总结】      所以在设计的时候 。就给表1加入一个外键,这个外键就是表2中的学号字段 。那么这样表1就是主表,表2就是子表 。所以结合2张表就能保持数据的一致性、完整性(预计就是还原成原来的那张大表吧) 。
      借着这个样例再谈谈外键的一些事项:
1、表1能够有一个或者多个外键,也能够没有 。(假设表1有多个外键可不能够是这种情况 。表2中的多个字段是表1的外键;或者说表1的多个外键是在多个表中)
2、这个外键能够不是表1的主键,但必须是子表的主键 。(简单的说就是 。假设一个字段是某个表的外键时 。那么该字段必须是主键)