我们有一个 View (称为X),它是由其他两个 View (称为Y和Z)调用的基本 View 。
今天,我们更改了 View X,在 View Y和Z开始带回不正确的数据之后。当我们进入Management Studio并运行SELECT * FROM Y(这正是在代码中调用 View 的方式)时,它将获取不正确的数据。但是,当我们运行实际的SQL时,该 View 所包含的 View 就可以了。我们尝试了许多事情,直到一位同事建议添加一个空间来查看X和Z,然后运行Alter才有效。一切恢复正常并运行良好。
我的问题是:MSSQL是否缓存其 View ?如果是这样,您如何迫使他们不要或迫使他们重新编译?
另外,对此的任何其他阅读都将是有帮助的。

最佳答案

请参阅sp_refreshview命令。

09-30 17:10
查看更多