创建和修改PRIMARYKEY约束

王朝other·作者佚名  2008-05-19
宽屏版  字体: |||超大  

一个 PRIMARY KEY 约束可以:

作为表定义的一部分在创建表时创建。

添加到尚没有 PRIMARY KEY 约束的表中(一个表只能有一个 PRIMARY KEY 约束)。

如果已有 PRIMARY KEY 约束,则可对其进行修改或删除。例如,可以使表的 PRIMARY KEY 约束引用其它列,更改列的顺序、索引名、聚集选项或 PRIMARY KEY 约束的填充因子。定义了 PRIMARY KEY 约束的列的列宽不能更改。

说明

若要使用 Transact-SQL 或 SQL-DMO 修改 PRIMARY KEY,必须先删除现有的 PRIMARY KEY 约束,然后再用新定义重新创建。

当向表中的现有列添加 PRIMARY KEY 约束时,Microsoft® SQL Server™ 2000 检查列中现有的数据以确保现有数据遵从主键的规则:

无空值

无重复值

如果 PRIMARY KEY 约束添加到具有空值或重复值的列上,SQL Server 不执行该操作并返回错误信息。不能添加违背上述规定的 PRIMARY KEY 约束。

SQL Server 自动创建唯一的索引来强制 PRIMARY KEY 约束所要求的唯一性。如果表中不存在聚集索引或未明确指定非聚集索引,则将创建唯一的聚集索引强制 PRIMARY KEY 约束。

重要

当 PRIMARY KEY 约束由另一表的 FOREIGN KEY 约束引用时,不能删除 PRIMARY KEY 约束;要删除它,必须先删除 FOREIGN KEY 约束。

在创建表时创建 PRIMARY KEY 约束

Transact-SQL参考(点击查看)

在现有表中创建或删除 PRIMARY KEY 约束

Transact-SQL参考(点击查看)

企业管理器:

(定义主键

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

定义主键

在数据库关系图或表设计器中,单击要定义为主键的数据库列的行选择器。若要选择多个列,请按住 CTRL 键同时单击其它列的行选择器。

右击列的行选择器,然后选择"设置主键"命令。将自动创建一个名为"PK_"且后跟表名的主键索引;可在属性页的"索引/键"选项卡上找到该索引。

警告

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

行选择器上的主键符号

用于标识一个主键列。

如果主键包含不止一列,则在一列中允许有重复值,但主键中所有列值的每个组合必须唯一。

如果定义复合键,主键中的列顺序将与关系图中的表所显示的列顺序相匹配。不过,可以在创建主键后更改列的顺序。

删除主键约束

当要删除对列或列组合中的输入值的唯一性要求时,删除主键约束。

删除主键约束

在数据库关系图或表设计器中,选择要删除主键约束的表的主键列。行选择器上的主键符号

用于标识一个主键列。

右击列的行选择器,然后选择"设置主键"命令。

?-或-?

在数据库关系图中选择要删除主键约束的表。

右击表并选择"索引/键"命令。

从"选定的索引"列表中选择主键索引。

选择"删除"按钮。

注意

选择"删除"按钮将导致一个无法撤消的操作,而且不保存对数据库关系图所做的所有其它更改。若要撤消该操作,请不保存更改即关闭当前的数据库关系图和所有其它打开的数据库关系图。

当保存表或关系图时,约束即从数据库中被删除。

)

修改 PRIMARY KEY 约束

(修改主键

当要更改列顺序、索引名称、聚集选项或填充因子时,修改主键。

修改主键

在数据库关系图中右击要修改主键的表,然后从快捷菜单中选择"属性"命令。

-或-

为要修改主键的表打开表设计器,在表设计器中右击,然后从快捷菜单中选择"属性"命令。

选择"索引/键"选项卡。

从"选定的索引"列表中选择主键索引。

完成下表中的操作:

当保存表或关系图时,主键即在数据库内被更新。)

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
© 2005- 王朝网络 版权所有