Я унаследовал довольно существенный проект, который широко использует представления SQL Server (2005 и 2008).
Одним шагом в процессе сборки является вызов системной хранимой процедуры sp_refreshviews
, чтобы убедиться, что никакие изменения в каких-либо таблицах не нарушают наши представления. Это отлично работает .... за исключением трех или четырех (из 200+) просмотров ....
С этими словами он просто взрывается - выдает странные сообщения об ошибках вроде
Сообщение 15165, уровень 16, состояние 1,
Процедура
sp_refreshsqlmodule_internal, строка 55
Не удалось найти объект
'vYourViewNameHere' или нет
есть разрешение.
, что совершенно неправильно - это представление существует , и я определенно могу выбрать из него.
Кажется, я не могу найти какой-либо хорошей краткой информации о , почему это происходит, что вызывает это ... какие-либо идеи? Что я мог сделать, чтобы обнаружить такие проблемные взгляды? Могу ли я изменить их дефинитино, чтобы они снова могли обновляться?
Обновление: Я зарегистрировал сообщение об ошибке в Microsoft Connect для этого - если вы согласны, что это кажется странным и требует исправления, пожалуйста, проголосуйте за него!
https://connect.microsoft.com/SQLServer/feedback/details/676728/sp-refreshview-crashes-with-misleading-error-on-views-with-schemabinding