目录:
定义-候选关键字是什么意思?
候选键是表中的一列或一组列,可以唯一地标识任何数据库记录而无需引用任何其他数据。 每个表可以具有一个或多个候选键,但是一个候选键是唯一的,称为主键。 通常,这是用于识别的候选密钥中最好的。
当一个键由多于一列组成时,称为复合键。
技术百科解释了候选密钥
定义候选密钥的最佳方法是一个示例:正在设计银行的数据库。 为了唯一地定义每个客户的帐户,可以使用客户的生日和每个客户帐户的序号的组合。 因此,安德鲁·史密斯先生的支票帐户可以编号为120344-1,而他的储蓄帐户编号为120344-2。 候选密钥刚刚创建。
这会引起问题。 如果不止一个具有相同生日的人想在银行开户怎么办?
由于存在这种潜在的陷阱,经常使用的选项是创建唯一的候选密钥。 在这种情况下,银行的数据库可以发行唯一的帐号,以确保避免出现刚才提到的问题。 从好的方面来说,这些帐号可以具有一些内置的逻辑。 例如,支票帐户可以以“ C”开头,后跟创建的年份和月份,并在该月份内依次编号。 因此,安德鲁·史密斯(Andrew Smith)的支票帐户现在可以是C-200805-22。 即使没有在其他地方引用,出纳员也可以识别出这是2008年5月创建的第22个支票账户。储蓄账户遵循相同的逻辑,但是用“ S”代替“ C”。
请注意,可以使用上述出生日期和序列号来唯一标识每个帐户,因此,这是可以潜在地用于标识记录的候选密钥。 但是,刚才已经演示了一种做同一件事的更好方法:创建候选密钥。 实际上,如果所选的候选键非常好,可以肯定地标识每条记录,则应将其用作主键。 所有数据库都允许每个表定义一个,并且只能定义一个主键。