先查询出主键的内码,然后删除该主键
DECLARE @NAME SYSNAME
DECLARE @TB_NAME SYSNAME
SET @TB_NAME = '表名'
SELECT TOP 1 @NAME = NAME FROM SYS.OBJECTS WITH(NOLOCK)
WHERE TYPE_DESC ='PRIMARY_KEY_CONSTRAINT' AND PARENT_OBJECT_ID = (SELECT OBJECT_ID FROM SYS.OBJECTS WITH(NOLOCK) WHERE NAME = @TB_NAME )
SELECT @NAME
DECLARE @ALTERSQL NVARCHAR(MAX)
SET @ALTERSQL=N'ALTER TABLE '+@TB_NAME+' DROP CONSTRAINT '+@NAME
EXEC SP_EXECUTESQL @ALTERSQL;
GO
然后再添加主键
ALTER TABLE 表名 ADD PRIMARY KEY (主键1, 主键2)
GO