sql 刷新视图_MsSql

比如我们创建了一个表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的结果就是三列了。

时间: 2024-10-24 14:37:43

sql 刷新视图_MsSql的相关文章

sql 刷新视图

比如我们创建了一个表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 在现实实践中,要避免在

sql server 视图视图创建问题

问题描述 sql server 视图视图创建问题 创建一个视图, 表A,表B, 表B中列名 X1与 表A中列名X2对应, 但表B中数据A中不一定有, 要在视图中新建一个项I,如果表A中有表B数据 则I为存在,如果没有则不存在 解决方案 没完全看懂你要什么样的,但跑不出左连接,右连接,内连接的范畴.http://www.cnblogs.com/LeoTerry/archive/2010/03/26/1696988.html 解决方案二: 秒解决问题~十分感谢~ 解决方案三: 秒解决问题~十分感谢~

sql server 视图重复列问题

问题描述 sql server 视图重复列问题 表A 列 Series ID Content 表B 列 Series QSeries text 表B中QSeries对应 表A 中Series 创建一个视图,视图中 显示 Series ID Content QSeries text 要求表A中一个Series 只对应 表B中一条数据 解决方案 SELECT A.*,(SELECT top 1 * FROM B WHERE QSeries=Series) AS QSeries FROM A 解决方案

SQL server 视图(view)介绍_mssql2005

视图是一种常用的数据库对象,它将查询的结果以虚拟表的形式存储在数据中.因为视图有非常多的优点:1,可以简化操作,2,可以建立前台和后台的缓冲,3,可以合并分割数据,4,最重要的是可以提高安全性,因此在SQL中视图也占据着非常重要的地位.在这章的总结中,深刻体会到了,两种方法:1,企业管理器,2,T-SQL语句来管理视图,和四种操作:1,增,2,,删,3,改,4,查. 在企业管理器,也是现在的SQL server Management Studio中,来执行这些操作,其实都大同小异!例如建立视图,

你是否也忘了刷新视图?

原文:你是否也忘了刷新视图? 起因:          由于工作原因,我隔几天就要执行一批开发人员提供过来的脚本,部分是新需求的开发,部分是修复bug.往往包含有几百个.我用工具批量执行之后,系统继续运行,后来反反复复会有这样那样的错误,其中一个,经过开发人员的检查,是因为视图没刷新.          对此我纳闷了很久,视图不就是一堆select语句吗?怎么还要刷新?难道表改了不会跟着改?为此,我首先自己做一个实验,发现的确不会马上改过来,至于啥时候才更改,也不清楚,听说从2000的时候,这个

jqueryMobile 动态添加元素,展示刷新视图的实现方法_jquery

jQuery Mobile的是一个很好的移动开发框架,你可能已经知道,虽然它有很多难以解决的问题,但是我相信后续版本jquery会修复--我是很喜欢jquery的.这并不是说它很完美无暇,很多开发人员遇到的情况也都难解决,比如:尝试使用代码来添加,更新或删除元素,使用JavaScript的页面跳转.在这篇博客文章中,我列出了一些动态添加组建重新刷新的方法. 1.Textarea field $('body').prepend('<textarea id="myTextArea"&

解析SQL Server 视图、数据库快照_Mysql

简介数据库快照       数据库快照,正如其名称所示那样,是数据库在某一时间点的视图.是SQL Server在2005之后的版本引入的特性.快照的应用场景比较多,但快照设计最开始的目的是为了报表服务.比如我需要出2011的资产负债表,这需要数据保持在2011年12月31日零点时的状态,则利用快照可以实现这一点.快照还可以和镜像结合来达到读写分离的目的.下面我们来看什么是快照. 什么是快照     数据库快照是 SQL Server 数据库(源数据库)的只读静态视图.换句话说,快照可以理解为一个

SQL创建视图实例

--使用代码创建视图 create view viewname --创建视图 as sql select statement 例(1) Name Subject Result 张三 语文 80 张三 数学 90 张三 物理 85 李四 语文 85 李四 数学 92 李四 物理 82 想变成 姓名 语文 数学 物理 张三 80 90 85 李四 85 92 82  代码如下 复制代码 declare @sql varchar(4000) set @sql = 'create view [viewn

CodeSmith生成SQL Server视图的实体类脚本

第一个文件是businessobjctforView.cst,生成C#实体类,此脚本需要引用第二个文件CommonUtility.cs.需将两个文件放在同一目录中. <%@ CodeTemplate Language="C#" TargetLanguage="T-SQL" Description="Generates a update stored procedure." %><%@ Assembly Name="Sc