Использование в представлениях “*” (все поля) – это зло. Если вы злодей вам понадобится скрипт, после каждого обновления исходных таблиц:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 |
declare @name varchar(200) declare cur_views cursor fast_forward read_only for select Name from SysObjects where Type='V' AND Category = 0 open cur_views fetch next from cur_views INTO @name while @@fetch_status=0 begin set @name = 'dbo.' + @name print @name exec sp_refreshview @name fetch next from cur_views into @name end close cur_views deallocate cur_views |
Этот скрипт перестроит метаданные всех представлений внутри текущей базы данных. Если этого не сделать все поля представления “съедут” и очень вероятно что под имена полей попадут данные соседних полей.