Измените функцию SQL, ссылаемую вычисляемым столбцом

Итак, я, наконец, наткнулся на место, которое объясняет поведение.

Так ответьте: нет, в Виндзорском замке нет логики логического автоматического образа жизни.

Причина в моем случае:

Они используют эти атрибуты Виндзорского замка , которые можно распределить по реализациям (компонентам), чтобы указать свой стиль жизни:

/// 
/// Message Box factory.
/// 
[Singleton]
public class MessageBoxFact : IMessageBoxFact
{

или

[Transient]

8
задан colithium 16 February 2009 в 06:46
поделиться

4 ответа

Нет, насколько я знаю, Вы не можете сделать этого - необходимо будет сначала удалить все вычисляемые столбцы, ссылающиеся на функцию, изменить функцию и затем воссоздать вычисляемые столбцы.

Возможно, MS даст нам команду "CREATE OR ALTER FUNCTION" в SQL Server 2010/2011?:-)

Marc

6
ответ дан 5 December 2019 в 12:13
поделиться

Последствия ИЗМЕНЕНИЯ могли быть огромными.

Вы индексировали столбцы? Используемый это в представлении с schemabinding? Сохраненный это? Отношения внешнего ключа к нему?

Что, если ИЗМЕНИТЬ изменения тип данных, NULLability или детерминизм?

Легче остановить ALTER FUNCTION с зависимостями, чем соглашение с таким количеством сценариев.

4
ответ дан 5 December 2019 в 12:13
поделиться

Вы могли изменить столбец, чтобы быть не - вычислены и обновить его ТРИГГЕРОМ.

Или Вы могли переименовать таблицу к чему-то еще, отбросить вычисляемый столбец и создать ПРЕДСТАВЛЕНИЕ вместо исходной таблицы (т.е. с исходным именем таблицы), и включая "вычисленный" столбец Вам нужно.

Править: обратите внимание, что это может смешать с Вашими ВСТАВКАМИ в исходное имя таблицы (теперь ПРЕДСТАВЛЕНИЕ). Очевидно, Вы могли сохранить старую таблицу, отбросить вычисляемый столбец и создать отдельное ПРЕДСТАВЛЕНИЕ, которое содержало вычисляемый столбец.

Мы должны были работать вокруг Вычисляемых столбцов достаточно раз, чтобы решить, что они - больше проблемы, чем они получают. Сбой-saf вставляет (1), пытаясь вставить в ПРЕДСТАВЛЕНИЯ на таблицы с вычисляемыми столбцами, вещи, которые требуют питания с НАБОРОМ ARITHABORT и так далее.

(1) У нас есть отказоустойчивые вставки как:

ВЫБОР INSERT INTO MyTable * ОТ MyOtherTable, ГДЕ...

которые разработаны, чтобы перестать работать, если новый столбец добавляется одна таблица а не другой. С Вычисляемым столбцом мы должны явно назвать все столбцы, который теряет нас та система поддержки.

0
ответ дан 5 December 2019 в 12:13
поделиться

Вы могли попробовать некоторой хорошей схемой, сравнивают инструмент, которые создают сценарий для Вас :)

0
ответ дан 5 December 2019 в 12:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: