删除主键约束在数据库关系图或表设计器中,选择要删除主键约束的表的主键列。行选择器上的主键符号  用于标识一个主键列。 右击列的行选择器,然后选择"设置主键"命令。 
–-或-–在数据库关系图中选择要删除主键约束的表。
右击表并选择"索引/键"命令。
从"选定的索引"列表中选择主键索引。
选择"删除"按钮。 
注意   选择"删除"按钮将导致一个无法撤消的操作,而且不保存对数据库关系图所做的所有其它更改。若要撤消该操作,请不保存更改即关闭当前的数据库关系图和所有其它打开的数据库关系图。当保存表或关系图时,约束即从数据库中被删除。
定义主键 在数据库关系图或表设计器中,单击要定义为主键的数据库列的行选择器。若要选择多个列,请按住 CTRL 键同时单击其它列的行选择器。
右击列的行选择器,然后选择"设置主键"命令。将自动创建一个名为"PK_"且后跟表名的主键索引;可在属性页的"索引/键"选项卡上找到该索引。 
警告   如果要重新定义主键,则必须先删除任何与现有主键相关的关系才能创建新主键。将出现一条信息,警告您作为该过程的一部分,将自动删除现有关系。行选择器上的主键符号  用于标识一个主键列。如果主键包含不止一列,则在一列中允许有重复值,但主键中所有列值的每个组合必须唯一。如果定义复合键,主键中的列顺序将与关系图中的表所显示的列顺序相匹配

解决方案 »

  1.   

    alter table drop CONSTRAINT PK_Name
    goalter table Add
    CONSTRAINT PK_Name
        PRIMARY KEY     NONCLUSTERED 
         ( column1 ) 
    go
      

  2.   

    “PK_Table1_1__21 ” 为主键名1、增加主键
    ALTER TABLE Table1 ADD CONSTRAINT PK_table1_1__21 PRIMARY KEY  CLUSTERED (Column1[,Column2]....)
    go
    2、删除主键
    ALTER TABLE Table1 DROP CONSTRAINT PK_Table1_1__21
    go
      

  3.   

    多谢Yang_的指点。
    再问一下,一个表里面的constraint都在什么地方看到?
    我用的是ms sql server
      

  4.   

    SP_HELP  'YOURTABLENAME '