Я хочу обновить скалярную функцию в нашей базе данных. Эта функция используется для нескольких вычисляемых столбцов в таблице ключей, поэтому я получаю ошибку зависимости, если пытаюсь ее обновить. Я могу явно удалить столбцы, обновить функцию и заново добавить столбцы, но без лишних усилий это изменит порядок столбцов и может иметь другие непредвиденные последствия. Я задавался вопросом, был ли более чистый способ сделать это?
10
Ответы:
Это может быть больше работы, но оно должно получить (примерно) то, что вы после:
1 - Создайте новую таблицу, в которой есть только ваш ПК из основной таблицы и обновленная функция.
2 - Оставь свой старый столбец
3 - Переименуйте свой старый стол в что-то вроде
TableName_Base
4 - Создайте объект,
VIEW
который соединяет вашу основную таблицу с таблицей поиска, с полями в том порядке, в котором вы хотите их видеть. Назовите представление, каким бы ни было ваше первоначальное имя таблицы.Это потенциально может создать некоторые проблемы
INSERTS
и,UPDATES
хотя, так как вы будете получать доступ через представление. Чтобы справиться с этим, вы можете либо вставить в таблицу напрямую, минуя вид.источник