Вы можете определить внешние ключи для распространения новых значений при изменении значения внешнего ключа.
Это так называемые каскадные ограничения и синтаксис:
alter table add constraint fk_table1_table2_id
foreign key table2(t1_id) references table1(t1_id)
on update cascade;
Как правило, существует также on delete
. Вы можете обратиться к документации вашей базы данных, чтобы узнать о них.
Затем вы можете "отключить" автоматическое c генерирование столбца идентификации и обновить значения для ключей в table1
. Затем они распространяются на все таблицы, в которых внешние ключи каскадно обновляют внешние ключи.
Примечание. Это необходимо сделать для ВСЕХ внешних ключей, если это является вашим намерением.
В общем, такой подход НЕ рекомендуется, поскольку он может привести к значительным изменениям в базе данных. Однако, если вам по какой-то причине необходимо выполнить sh, вы можете.
Примечание. Если вы делаете это для устранения пробелов, не беспокойтесь. Пробелы в первичных ключах не вызывают проблем.