当前位置:Gxlcms > mssql > sql刷新视图

sql刷新视图

时间:2021-07-01 10:21:17 帮助过:59人阅读

比如我们创建了一个表T1和一个T1的视图V1,然后更改T1,再看V1的结果:
首先创建表T1:
代码如下:

IF OBJECT_ID('T1') IS NOT NULL
DROP TABLE T1
CREATE TABLE T1(col1 INT,col2 INT)
INSERT INTO T1(col1,col2) VALUES(1,2)
GO

然后创建T1的视图V1:
代码如下:

CREATE VIEW V1
AS
SELECT * FROM T1


在现实实践中,要避免在视图中的SELECT语句中使用*,在这只是演示。如果你查询视图V1就会出现以下结果:
 

接下来,我们对表T1添加一列col3:
代码如下:

ALTER TABLE T1 ADD col3 INT

然后再次查询视图V1,你想这时的结果是三列呢,还是而列呢?答案是二列。T1架构的改变,并没有影响到视图的元数据中,这时候,如果我们要刷新一下视图V1,我们就可以用:EXEC sp_refreshview V1 命令, 再次查询,V1的结果就是三列了。

您可能感兴趣的文章:

  • MySQL入门教程(七)之视图
  • MySQL中视图的使用及多表INNER JOIN的技巧分享
  • mysql触发器实现oracle物化视图示例代码
  • 基于mysql事务、视图、存储过程、触发器的应用分析
  • MySQL笔记之视图的使用详解
  • MySQL 视图 第1349号错误解决方法
  • SQL SERVER先判断视图是否存在然后再创建视图的语句
  • 存储过程解密(破解函数,过程,触发器,视图.仅限于SQLSERVER2000)
  • sql server判断数据库、表、列、视图是否存在
  • MySQL 视图的基础操作(五)

人气教程排行