我可以在一个表中拥有多个主键吗?

我可以在一个表中拥有多个主键吗?

我可以在一个表中拥有多个主键吗?



郎朗坤
浏览 1197回答 3
3回答

慕的地8271018

表可以有一个复合主键,它是由两列或更多列组成的主键。例如:CREATE TABLE userdata (   userid INT,   userdataid INT,   info char(200),   primary key (userid, userdataid));更新: 这是一个链接,其中包含复合主键的更详细说明。

不负相思意

您只能拥有一个主键,但主键中可以有多个列。您还可以在表上使用唯一索引,这将有点像主键,因为它们将强制执行唯一值,并将加快查询这些值。

摇曳的蔷薇

一个表可以有多个候选键。每个候选键都是一列或一组列,这些列是UNIQUE,一起使用,也是NOT NULL。因此,为任何候选键的所有列指定值足以确定有一行符合条件,或者根本没有行。候选键是关系数据模型中的基本概念。如果一个表中存在多个密钥,则通常的做法是将一个候选密钥指定为主密钥。通常的做法是使表的任何外键引用主键,而不是任何其他候选键。我推荐这些实践,但关系模型中没有任何内容需要在候选键中选择主键。
打开App,查看更多内容
随时随地看视频慕课网APP