В нашем приложении используется база данных Oracle 10g, в которой пользователю предоставляется несколько первичных ключей. Код продукта и т. Д. К сожалению, уже поздно что-то делать с этим, так как есть множество отчетов и настраиваемых сценариев, которые мы не контролируем. Мы не можем переопределять первичные ключи или испортить структуру базы данных.Как переименовать значения первичного ключа в Oracle?
Теперь некоторые клиенты хотят изменить некоторые из значений первичного ключа. То, что они изначально хотели назвать P23A1, теперь должно называться CAT23MOD1 (не настоящий пример, но вы понимаете мой смысл.)
Есть ли простой способ сделать это? Я бы предпочел какой-то скрипт, который можно было бы параметризовать, чтобы соответствовать другим таблицам и ключам, но внешние инструменты были бы приемлемыми, если не существует другого способа.
IME, мы отключили бы противопоказания и обновили таблицу по таблицам. Tedious ... –
Исходя из вопроса, я предполагаю, что они не в состоянии отключить ограничения, и похоже, что конечный пользователь хочет эту возможность на постоянной основе, а не как одноразовую работу. Я не вижу ничего другого, кроме написания довольно уродливого триггера при обновлении таблицы PK. –
@Larry: Да, это значения, которые нужно изменить. @OMG: Да, очень утомительно :-(У вас есть интересный способ сделать это? :-) –