SQL Server视图显示改变基本依赖后过时/错误的数据

我们有一个观点(称之为X)也就是所谓的2其他意见的基础视图(称他们为Y和Z)。

今天,我们做出了改变,查看X,是的Y后和Z开始带回那是不正确的数据。 当我们在管理Studio和运行Select * from Y这正是如何观点被称为在代码中),它还是会回到这是不正确的数据。 然而,当我们运行该视图包含实际的SQL这是罚款。 我们尝试了一些事情,直到同事建议加一个空格,查看X和Z,然后运行更改,其中的工作。 一切都恢复正常,运行良好。

我的问题是:是否MSSQL缓存自己的观点? 如果是的话你怎么强迫他们不要或者强迫重新编译?

此外,任何额外的念叨这将是有益的。

--------------解决方案-------------

见sp_refreshview命令。

更新的元数据指定的非架构绑定图。 为视图持久性元数据可能由于改变基础对象在其上视图所依赖的过时。

SQL Server不缓存视图的数据(至少不会在你的方式是指它)。

如果视图定义包含“SELECT *”,那么在创建视图时的实际列列表定义,即“SELECT *”换成比存在于你创建视图时的实际列的列表。 也就是说,如果您添加列由视图引用的基础表,将不会出现在视图中的意思。

分类:SQL服务器 时间:2015-03-15 人气:2
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 1.476 (s). 10 q(s)