如何:创建主键

定义主键以对不允许空值的指定列中输入的值强制唯一性。 如果为数据库中的某个表定义了主键,则可将该表与其他表相关,从而减少对冗余数据的需要。 一个表只能有一个主键。

备注

为 SQL Server 2012 格式的数据库提供了一个新版本的表设计器。本主题介绍表设计器的旧版本,可将其与 SQL Server 早期格式的数据库配合使用。

在新版本中,可通过图形界面或直接在脚本窗格中更改表定义。如果使用图形界面,表定义将在脚本窗格中自动更新。若要在脚本窗格中应用 SQL 代码,请选择“更新”按钮。有关新版本的详细信息,请参阅如何使用表设计器创建数据库对象

备注

对于主键约束,有些数据库具有不同的规则。有关数据库如何使用主键约束的详细信息,请查阅数据库文档。

备注

以下说明中的某些 Visual Studio 用户界面元素在您计算机上的名称或显示位置可能有所不同。这些元素取决于您所使用的 Visual Studio 版本和您所使用的设置。有关详细信息,请参阅 Visual Studio 设置

创建主键

  1. 在表设计器中,单击要定义为主键的数据库列的行选择器。 如果要选择多列,在单击其他列的行选择器时按住 Ctrl 键。

  2. 右击该列的行选择器,然后选择**“设置主键”。 自动创建名为“PK_”(后跟表名)的主键索引,您可以在“索引/键”**对话框上看到它。

警告

如果要重新定义主键,必须首先删除与现有主键之间的任何关系,然后才能创建新主键。将出现一条消息警告您,作为该过程的一部分,将自动删除现有关系。

主键列由其行选择器中的主键符号标识。

如果主键由一列以上组成,则其中一列允许重复值,但是主键中所有列的值的每种组合必须是唯一的。

如果定义复合键,则主键中列的顺序与关系图的表中显示的列顺序匹配。 但是,可在创建主键后更改列的顺序。 有关更多信息,请参见 如何:修改主键

请参见

任务

如何:删除主键

如何:更改关系属性

如何:修改主键

参考

主键或唯一键属性

概念

表关系 (Visual Database Tools)

其他资源

使用约束

使用约束