DECLARE @ override @ vNameWHILE @ FETCH_STATUS0BEGIN -- refresh the specified
DECLARE @ vName sysname DECLARE invalid cursor for select Name from sysobjects WHERE xtype = 'V' order by crdate for read only open refresh_cursor fetch next from refresh_cursor INTO @ vName WHILE @ FETCH_STATUS = 0 BEGIN -- refresh the specified video
DECLARE @ vName sysname
DECLARE refresh_cursor CURSOR
SELECT Name from sysobjects WHERE xtype = 'V' order by crdate
FOR READ ONLY
OPEN refresh_cursor
Fetch next from refresh_cursor
INTO @ vName
WHILE @ FETCH_STATUS = 0
BEGIN
-- Refresh the metadata of the specified view. Because the basic object on which the view depends is changed, the persistent metadata of the view will expire.
Exec sp_refreshview @ vName
PRINT 'view' + @ vName + 'updated'
Fetch next from refresh_cursor
INTO @ vName
END
CLOSE refresh_cursor
DEALLOCATE refresh_cursor
The above database script passed the test in SQL Server 2005