>  기사  >  데이터 베이스  >  批量更新SQL Server数据库的用户视图

批量更新SQL Server数据库的用户视图

WBOY
WBOY원래의
2016-06-07 15:00:11980검색

DECLARE @vName sysname DECLARE refresh_cursor 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 --刷新指定视

DECLARE @vName sysname

DECLARE refresh_cursor 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
--刷新指定视图的元数据。由于视图所依赖的基础对象发生更改,视图的持久元数据会过期。
  exec sp_refreshview @vName
  PRINT '视图' + @vName + '已更新'
  FETCH NEXT FROM refresh_cursor
     INTO @vName
 END
CLOSE refresh_cursor
DEALLOCATE refresh_cursor

以上数据库脚本在SQL Server 2005中测试通过

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.