1、什么是主键、外键:数据库
关系型数据库中的一条记录中有若干个属性,若其中某一个属性组(注意是组)能惟一标识一条记录,该属性组就能够成为一个主键 好比 学生表(学号,姓名,性别,班级) 其中每一个学生的学号是惟一的,学号就是一个主键 课程表(课程编号,课程名,学分) 其中课程编号是惟一的,课程编号就是一个主键 成绩表(学号,课程号,成绩) 成绩表中单一一个属性没法惟一标识一条记录,学号和课程号的组合才能够惟一标识一条记录,因此 学号和课程号的属性组是一个主键 成绩表中的学号不是成绩表的主键,但它和学生表中的学号相对应,而且学生表中的学号是学生表的主键,则称成绩表中的学号是学生表的外键 同理 成绩表中的课程号是课程表的外键 定义主键和外键主要是为了维护关系数据库的完整性,总结一下: 主键是能肯定一条记录的惟一标识,好比,一条记录包括身份正号,姓名,年龄。身份证号是惟一能肯定你这我的的,其余均可能有重复,因此,身份证号是主键。 外键用于与另外一张表的关联。是能肯定另外一张表记录的字段,用于保持数据的一致性。好比,A表中的一个字段,是B表的主键,那他就能够是A表的外键。post
|
主键spa |
外键blog |
定义:ci |
惟一标识一条记录,不能有重复的,不容许为空it |
表的外键是另外一表的主键, 外键能够有重复的, 能够是空值table |
做用:class |
用来保证数据完整性总结 |
用来和其余表创建联系用的数据 |
个数: |
主键只能有一个 |
一个表能够有多个外键 |