Мне нужно изменить тип столбца в более чем 200 таблицах. Я следую следующему рецепту:
- Отключить все внешние ограничения, если на столбец ссылается какой-либо FK
- Сохранение столбцов в varray и удаление первичного ключа, если столбец является частью PK
- Создать новый временной столбец в таблице того же типа
- Обновить новый временной столбец с исходными значениями
- Удалить значения из исходного столбца
- Изменить тип столбца исходного столбца
- Обновить исходный столбец значениями временного столбца
- Восстановить первичный ключ, если применяется
- Включить FK, если применяется
У меня возникли проблемы со следующими случаями
. Когда первичный ключ является составным (несколько столбцов)
, Мне нужно сохранить оригинальные подписи FK и PK, чтобы я мог восстановить их после изменения
------- Мои идеи --------
Резервное копирование записей all_constraints и all_cons_columns во временной таблице и после изменения типа столбца с восстановлением информации об ограничениях.
Придерживайтесь той же идеи хранения подписи FK и PK, чтобы восстановить их после изменения типа столбца
¿Есть предложения? было бы ценить это, спасибо !!