我遇到了問題,因爲我已經有一個MYSQL表中的複合主鍵。但是現在我又向該表中添加了另一列,並且由於需要進行一些更改,我必須以這種方式修改該組合主鍵,以便我需要將此前提到的列添加到該組合主鍵列表中。任何人都可以告訴我如何改變該表而不丟棄現有的複合主鍵。我在Rails項目中這樣做如何將新列添加到現有的複合主鍵
17
A
回答
25
你不能改變主鍵。你必須刪除並重新添加它:
ALTER TABLE MyTable
DROP PRIMARY KEY,
ADD PRIMARY KEY (old_col1, old_col2, new_col);
+0
這是這樣做的方式,如果有什麼東西阻止你放棄主鍵 – PrashanD 2017-06-27 08:34:25
0
但是如果一個密鑰不存在? 例如:
ALTER TABLE xxxx ADD id INT NOT NULL AUTO_INCREMENT, ADD PRIMARY KEY(id,id2,id3);
相關問題
- 1. 如何將外鍵添加到複合主鍵
- 2. 無法將新列添加到現有主鍵
- 3. 將主鍵添加到現有表
- 4. 將主鍵添加到現有表
- 5. SQL(access) - 將新字段添加到複合主鍵
- 6. 如何添加複合主鍵並刪除現有表上的重複項?
- 7. 如何將主鍵添加到具有重複值的表中?
- 8. 將主鍵列添加到現有的mysqli數據庫表中
- 9. 將新條目添加到現有主鍵時出錯sybase
- 10. 如何使用SAP HANA將(主鍵)添加到現有表中
- 11. 如何將新主機添加到kubernetes中的現有Ingress中?
- 12. laravel-mongodb:如何將外鍵添加到兩個現有集合?
- 13. 如何將重複的值添加到SQL中的現有列?
- 14. 添加一個新的列與現有的主鍵
- 15. 將外鍵約束添加到包含現有數據的表的主鍵列
- 16. 如何將AUTO_INCREMENT添加到現有列?
- 17. 如何將新陣列動態添加到現有陣列中
- 18. 如何將主鍵添加到Rails?
- 19. 添加複合外鍵到現有的SQL表
- 20. 如何將新的元素添加到現有陣列提起
- 21. 如何將新項目添加到複選框列表中的現有項目
- 22. SQL Server將自動增加主鍵添加到現有表
- 23. PostgreSQL如何將聚合列添加到現有查詢
- 24. ALTER TABLE添加一個複合主鍵
- 25. 如何將新添加列添加到Oracle中所有現有行11g
- 26. 將主鍵添加到Advantage中的現有數據庫
- 27. 將主鍵添加到alembic中的現有MySQL表中
- 28. SQL:在現有的複合鍵上添加外鍵
- 29. 如何將列添加到MySQL InnoDB表的主鍵?
- 30. 如何將新項目添加到現有列表c#?
請注意,我有外鍵一些是在複合主鍵 – nash 2010-02-25 15:00:06
的外鍵的部分主鍵列?這是不好的魔咒。你真的應該切換到自動增量主鍵。 – MindStalker 2010-02-25 15:16:42
放棄鑰匙不應該放棄價值 - 爲什麼你不能放棄PK? – reech 2010-02-25 15:44:37