0
A
回答
2
這似乎並不太難:
- 確保所有的外鍵約束被定義爲
ON UPDATE CASCADE
(所以當你更新密鑰值,孩子們的FKS也更新) - 更新內容一個整數(但仍文本,當然)值
ALTER TABLE my_table my_id_column INT AUTO_INCREMENT
你如何從密鑰選擇了新的整數值是由你。也許,只是用這個簡單的查詢,以它們編號從1中指定的順序:
set @i:=0;
update my_table set
my_id_column = (@i := @i + 1)
order by some_ordering_column;
僅供參考,我只測試了所有的代碼在這裏和它的作品。
相關問題
- 1. 更改其他表中外鍵引用的表的主鍵列
- 2. 更改主鍵
- 3. 更改主鍵
- 4. 更改表的主鍵的SQLite
- 5. 如何更改SQL Azure上的主鍵
- 6. 更改SQL數據庫上的主鍵
- 7. 在表的主鍵上有索引嗎?
- 8. 如何更改表的主鍵
- 9. 更改主鍵已經存在的表
- 10. 如何更改MySQL中表的主鍵?
- 11. 更改SharePoint列表的主鍵?
- 12. 如何更改表的複合主鍵
- 13. 更改主鍵和標識的表列
- 14. 更改主鍵值
- 15. CQL3更改主鍵
- 16. 更改Sql表(將外鍵更改爲表的第二個主鍵)
- 17. SQL Server將主鍵更改爲不同的[新]列並更新外鍵引用
- 18. MySQL:更改主鍵的ID
- 19. MSSql批量更新主鍵上的表
- 20. 在SQL表中更改主鍵
- 21. 更改主鍵和外鍵的ActiveRecord
- 22. 如何更新在另一個表中引用爲外鍵的表的主鍵?
- 23. 對另一個表上的一個主鍵的兩個表主要引用
- 24. sqlite&rails:更改主鍵列?
- 25. 在Oracle中更改主鍵
- 26. 我想用主鍵的新值更新表的主鍵
- 27. 更改在MySQL中具有外鍵約束的表主鍵
- 28. SQL更改語句和外鍵/主鍵
- 29. 更改用戶主鍵ASP.NET身份
- 30. 如何使用NHibernate更改主鍵
我喜歡的事實是不容易改變這一點,因爲它作爲一個警告,說明爲什麼這些決定不應該掉以輕心。 – 2011-06-09 03:41:38