sql server 更新视图的sp

create procedure RefreshAllView
as
begin
declare @ViewName varchar(250)
declare #views cursor for select name from sysobjects
where objectproperty(id,N‘IsView‘)=1 and uid=1 order by name
open #views
fetch next from #views into @viewname
while @@fetch_status=0
begin
print ‘正在更新: ‘+ @viewname
exec sp_refreshview @viewname --更新视图
fetch next from #views into @viewname
end
close #views
deallocate #views
end

时间: 2024-10-08 04:09:37

sql server 更新视图的sp的相关文章

sql server 更新表,每天的数据分固定批次设置批次号sql

按表中的字段 UpdateTime 按每天进行编号,每天的编号都从1开始编号,并附带表的主键 cid,把数据存入临时表中 WITH temp AS (SELECT cid,updatetime, ROW_NUMBER() OVER (PARTITION BY CONVERT(varchar(10), UpdateTime, 20) ORDER BY updatetime) AS Row_Num FROM Customer_Transfer ) 从临时表中根据主键cid进行更新 BatchNo,给

SQL Server系统视图 [不定期更新]

1.sys.objects:在数据库中创建的每个用户定义的架构作用域内的对象(如表.视图.约束.默认值.日志.规则存储过程等,但不包括DDL触发器)在该表中均对应一行. 列名 说明 name 对象名. object_id 对象标识号.在数据库中是唯一的. type 对象类型.如,U = 表(用户定义类型)UQ = UNIQUE 约束. type_desc 对对象类型的说明.如,UNIQUE_CONSTRAINT.USER_TABLE create_date 对象的创建日期. modify_dat

SQL Server索引视图以(物化视图)及索引视图与查询重写

经常听Oracle的同学说起来物化视图,物化视图的作用之一就是可以实现查询重写,听起来有一种高大上的感觉, SQL Server也有类似于Oracle物化视图的功能,只不过叫做索引视图. 说实话,还是物化视图听起来比较合适,与普通视图比,物化视图就是直接将数据存储起来了 SQL Server中的索引视图也具有查询重写的功能, 所谓的查询重写,就是如果符合条件的数据在索引视图上,并且查询列都包含在在索引视图上,此时可以直接通过查询索引视图来替代基于原始表的查询 依旧惯例,先上代码做一个测试环境 -

SQL Server创建视图——视图的作用

视图简介: 视图可以看作定义在SQL Server上的虚拟表.视图正如其名字的含义一样,是另一种查看数据的入口. 常规视图本身并不存储实际的数据,而仅仅是由SELECT语句组成的查询定义的虚拟表 . 从数据库系统内部来看,视图是由一张或多张表中的数据组成的,从数据库系统外部来看,视图就如同一张表一样,对表能够进行的一般操作都可以应用于视图. 例如查询,插入,修改,删除操作等,但插入.修改.删除等的操作其实对于原始数据表的操作. 视图的作用: 1.视图隐藏了底层的表结构,简化了数据访问操作,客户端

sql server 创建视图添加表时出现从其他数据库导入的表未显示出来

创建视图添加表时出现从其他数据库导入的表未显示出来,通过数据库刷新,也不能解决.关闭SQL server management studio 后,再次进入,在创建视图的时候添加表的列表就出现了新导入的表. 原文地址:https://www.cnblogs.com/benpao1314/p/9472641.html

SQL Server创建视图

什么是视图 大家都知道,我们国家现在“神七”上天了.从美国的月球登月开始,人类上天不再是神话.听说,在美国,你只要出几十万美元,您就可以上一次月球进行太空旅行,所以,我们相信:在不久的将来,上天旅行将走进我们百姓的生活,那是一件多么新鲜神奇的事情啊.好多美国人上天后,他们用望远镜观看我们的地球,结果看到的地球形状各不相同.有的说象绿色的橘子,有的说象白色的大鸭梨,有的说象蓝色的大西瓜.这是为什么呢?你肯定会说:那是因为从不同的角度(视角),看到的不同形状而已.那么,从不同的视角,将看到不同的“图

SQL Server更新表(用一张表的数据更新另一张表的数据)

a) 写法轻松,更新效率高: update table1 set field1=table2.field1,field2=table2.field2 from table2 where table1.id=table2.id b) 常规方式,这种写法相当于一个 Left join, 以外面的where为更新条数,如果不加where就是所有记录 update table1 set field1= (select top 1 field1 from table2 where table2.id=ta

sql server更新一列为行号

注:引用自http://blog.csdn.net/lenovouser/article/details/52281726 查询显示行号: 1 SELECT 2 row_number () OVER (ORDER BY orderby_id) AS rowNumber 3 FROM 4 table_name; 更新一列为行号: 1 UPDATE table_name 2 SET new_row = t1.rowid 3 FROM 4 ( 5 select table_pk, 6 row_numb

Sql Server -更新语句,修改的字段是日期时间型,修改其中的月份

update T_Sys_Partner set EXPIREDATE = convert(nvarchar,year(EXPIREDATE))+'-'+'6' + right(convert(nvarchar(19),EXPIREDATE ,120),12) WHERE MONTH(ExpireDate) = 4