Най-лесният начин да се справите с промените в първичния ключ - далеч - е да ALTER
вашите препращащи ограничения за външен ключ да бъдат ON UPDATE CASCADE
.
След това сте свободни да актуализирате стойностите на първичния ключ и промените ще преминат каскадно към дъщерни таблици. Това може да бъде много бавен процес поради всички произволни I/O, но ще работи.
Трябва да внимавате да не нарушите ограниченията за уникалност на колоната с първичен ключ по време на процеса.
По-труден, но по-бърз начин е да добавите нов UNIQUE
колона за новия PK, попълнете го, добавете нови колони към всички препращащи таблици, които сочат към новия PK, махнете старите FK ограничения и колони, след което накрая махнете стария PK.