我的理解是,从理论上讲,主键是随机选择的候选键。
根据此定义
'候选键-候选键可以是任何列或组合可以作为数据库中唯一键的列数。可以有一个表中有多个候选键。每个候选密钥都可以作为主键。
主键–主键是一列或列的组合唯一标识一条记录。只有一个候选密钥可以是主密钥键。'
句子“每个候选键都可以作为主键。”和“只有一个候选键可以是主键”。从选择键中任意选择主键,从逻辑上讲并不矛盾。这是正确的吗?
主键具有候选键没有的哪些特殊属性?
引用的CK和PK定义是错误的。当心,大多数关于关系模型的Stack Overflow / Stack Exchange回答都很差。例如:您引用数据库管理员。例如:除了nvogel的答案,重复链接上的所有答案都值得投票。遵循已出版的有关信息建模,关系模型和数据库设计的学术教科书。 (用于记录和使用设计的语言和工具的手册不是此类教科书。)(也不是Wiki文章或Web帖子。)在卡住的地方询问1个专门研究的非重复性问题。 PS准确地说“ PK”不是理论的一部分。 – philipxy