杭州网站建设就找蓝韵网络,厦门免费建立企业网站,自适应网站什么意思,网站开发项目架构这些年的一些经历告诉我#xff0c;很多初学者搞不清超键、候选键等#xff0c;被数据库中的各种键搞的一头雾水。下面就跟大家一起聊聊数据库中的那些键。 首先看看各种键的定义#xff1a; 超键(super key):在关系中能唯一标识元组的属性集称为关系模式的超键 候选键(ca…这些年的一些经历告诉我很多初学者搞不清超键、候选键等被数据库中的各种键搞的一头雾水。下面就跟大家一起聊聊数据库中的那些键。 首先看看各种键的定义 超键(super key):在关系中能唯一标识元组的属性集称为关系模式的超键 候选键(candidate key):不含有多余属性的超键称为候选键 主键(primary key):用户选作元组标识的一个候选键程序主键 外键(foreign key)如果关系模式R1中的某属性集不是R1的主键而是另一个关系R2的主键则该属性集是关系模式R1的外键。 结合实例的具体解释 假设有如下两个表 学生学号姓名性别身份证号教师编号 教师教师编号姓名工资 超键 由超键的定义可知学生表中含有学号或者身份证号的任意组合都为此表的超键。如学号、学号姓名、身份证号性别等。 候选键 候选键属于超键它是最小的超键就是说如果再去掉候选键中的任何一个属性它就不再是超键了。学生表中的候选键为学号、身份证号。 主键 主键就是候选键里面的一个是人为规定的例如学生表中我们通常会让“学号”做主键教师表中让“教师编号”做主键。 外键 外键比较简单学生表中的外键就是“教师编号”。外键主要是用来描述两个表的关系。 其实这些键还是比较容易区分的只是初学者一下子看到好几个名字相似的概念容易自己把自己搞晕自己给自己制造困难。多读两遍定义然后结合实例很容易就能把它们区分开。希望这篇文章可以给一些初学者一点点的帮助。