码----能唯一标识实体的属性,码是整个关系的性质,而不是一个个元组的性质;关系中的任意两个元组都不允许同时在码属性上具有相同的值.码指定代表了被建模的事物在现实世界中的约束.
码包括:主码,候选码或超码.
超码是一个或多个属性的集合,这些属性的组合可以使我们在一个关系中唯一地标识一个元组.
候选码 超码中可能包含一些无关紧要的属性.如果K是一个超码,那么K的任意超集也是超码,我们通常只对这样的一些超码感兴趣,它们的任意真子集都不能成为超码,这样的最小超码称为候选码. 例如,如果K是超码,那么所有包含K的集合都不能是候选码;如果K,J都不是超码,那么K和J组成的集合(K,J)有可能是候选码。
主码:是从多个候选码中任意选出一个做为主码,如果候选码只有一个,那么候选码就是主码。主码应该选择那些值从不或极少变化的属性.