SQL Server 2008 - sp_refreshview взрывает некоторые представления

Я унаследовал довольно существенный проект,который широко использует представления SQL Server (2005 и 2008).

Одним из шагов в процессе сборки является вызов системной хранимой процедуры sp_refreshviews , чтобы убедиться, что никакие изменения в каких-либо таблицах не нарушили нашу взгляды. Это работает нормально .... за исключением примерно трех или четырех (из 200+) просмотров ....

С ними это просто бомба - выдает странные сообщения об ошибках вроде

Msg 15165, Level 16, State 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

12
задан marc_s 23 June 2011 в 21:14
поделиться