我试图将现有键中的SQL数据库中的表的主键更改为不包含现有列的组合键。下面的代码是不是由于以下错误消息的工作:将主键更改为复合键(主键已存在)
DROP PRIMARY KEY:
附近有语法错误PRIMARY。期待COLUMN,约束ID,或 QUOTED_ID
ADD PRIMARY KEY:
附近有语法错误PRIMARY。期待ID
T-SQL代码:
ALTER TABLE AgentIdentification
DROP PRIMARY KEY Number,
ADD PRIMARY KEY (AgentId, IdIndicator)
编辑
我能够通过使用以下两种查询语句
ALTER TABLE AgentIdentification
DROP CONSTRAINT [PK_AgentId_Id]
GO
ALTER TABLE AgentIdentification
ADD CONSTRAINT pk_PersonID PRIMARY KEY (AgentId, IdIndicator)
相反的要求,要做到这一点SQL“DROP PRIMARY KEY”我需要告诉它“DROP CONSTRAINT”,同时分隔这两个操作i nto两个疑问帮助。
请使用正确的RDBMS标记这一点。 SQL不是数据库;这是许多人使用的语言(每种情况都略有不同)。 – Ben
你想放弃PK领域还是PK约束? – danihp
请:1)指定你的数据库,2)剪切/粘贴确切的错误信息,3)考虑将你的命令分解为两个“alter table”语句,4)注意你可能需要其他语句),或者甚至可能需要删除并重新创建整个表格 – paulsm4