我有一张表GB_Assignor_Assignee。我有一个主键,包括这个组合(StateCode,CountyID,Doc_Type_Group_Code)。现在我必须添加一个新列Doc_Type_Code。我通过改变表添加它。我想在这个主键中包含这个新列。所以我的组合将是(StateCode,CountyID,Doc_Type_Group_Code,Doc_Type_Code)。
如何更改此主键以添加新列。我不想放弃它然后重新创建它。请建议。
答案 0 :(得分:3)
如果要更改主键以包含新列,则必须删除并重新创建它 - 没有其他方法。创建后,您无法将列添加到现有主键。
问题是:你最好不要创建一个新的人工ID(INT类型)作为你的PK吗?如果出现另一列,则不必更改它,引用该表将更容易(仅在一个INT而不是五列或六列上加入)......
答案 1 :(得分:0)
你必须放弃并重建你的PK。
最简单的方法是在SQL Server的表设计器中进行更改,并要求它为您生成更改脚本。