首页 >数据库 >mysql教程 >如何在 SQL 中定义和使用复合主键?

如何在 SQL 中定义和使用复合主键?

DDD
DDD原创
2025-01-10 20:06:41508浏览

How to Define and Use a Composite Primary Key in SQL?

SQL复合主键详解

在SQL中,主键用于唯一标识表中的每一行。当主键由多个列组成时,称为复合主键。

创建复合主键的方法

要为表定义复合主键,请使用以下语法:

<code class="language-sql">CREATE TABLE 表名 (
  列名1 数据类型,
  列名2 数据类型,
  PRIMARY KEY (列名1, 列名2)
);</code>

示例:考虑一个名为“投票”的表,包含列QuestionID、MemberID和vote。要创建一个由QuestionID和MemberID组成的复合主键,请使用以下SQL语句:

<code class="language-sql">CREATE TABLE voting (
  QuestionID NUMERIC,
  MemberID NUMERIC,
  vote NUMERIC,
  PRIMARY KEY (QuestionID, MemberID)
);</code>

关键注意事项

  • 主键中指定的列必须对每一行都是唯一的。
  • 主键中的任何列都不能包含空值。
  • 仅基于复合主键中单个列进行过滤的查询将无法使用主键索引。
  • 为优化查询,请考虑在复合主键中剩余的列上创建额外的索引。

以上是如何在 SQL 中定义和使用复合主键?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn