Изменение функции, используемой в качестве столбца по умолчанию в SQL Server - PullRequest
9 голосов
/ 22 января 2010

У нас проблема с плохо закодированной функцией SQL (которая отлично работает в реальном времени, но не в нашей тестовой среде).Эта функция используется для предоставления значения по умолчанию во многих таблицах. Попытка ALTER возвращает ошибку «Cannot ALTER ###, потому что на нее ссылается объект».

Есть ли способ обойти это сообщение об ошибке?Единственный способ, которым я могу думать о том, что мы пытаемся написать скрипт для удаления его из каждой таблицы, в которой он используется по умолчанию, изменив функцию и добавив ее снова после.

Спасибо

Ответы [ 2 ]

13 голосов
/ 22 января 2010

Поскольку на объект ссылаются, вы не можете его изменить. Это то, что вы делаете:

  1. Удалить ограничение по умолчанию из таблицы / столбца
  2. Изменить функцию
  3. Добавить ограничение по умолчанию обратно
5 голосов
/ 22 января 2010

SQL Server не позволит вам изменить функцию, связанную с ограничением DEFAULT для столбца.

Ваша единственная возможность - удалить ограничение перед изменением функции. ( Источник )

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...