我試圖將現有鍵中的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