输入:
客户声称应用程序 (.NET) 在查询某些数据时返回的数据与客户直接查看数据表时返回的数据不同。
我知道可能有各种原因并且在完全不同的地方。我的目的不是在这里解决它,而是询问有经验的 DBA 和 DB 开发人员是否:
VIEW 是否可以显示与基础 TABLE 不匹配的数据?
可能的原因(请评论带问号的):
SELECT ... FOR UPDATE
导致这个 ??? 到底发生了什么(答案):
某些表中的列位置发生了变化:显然,客户向顾问提供了完整的数据库访问权限,以进行数据库使用情况分析。当使用
SELECT * ...
子句时,那个伟大的家伙改变了列的顺序以查看表开头的几个审计字段。使用 dbGhost 将数据库架构与问题出现前几天备份的架构进行比较,发现列位置差异。
接下来的事情与编程无关,更多的是政治问题。
因此
sp_refreshview
是解决方案。我只是多走了一步,找到了问题的根源。谢谢你们。 最佳答案
是的,有点。
可能的原因:
关于sql - 数据库VIEW不反射(reflect)底层TABLE中的数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/1013711/