日期:2014-05-18  浏览次数:20479 次

sql 创建视图没有数据,修改一下又有数据了,求解释???
sql2005 创建视图没有数据,修改一下又有数据了,求解释???
ps:数据表没有动过,,仅把create view 改为 alter view 其它内容不变,,使用视图查询又正常了,,
个人感觉出现了假死一样,,修改一下才被更新到视图,,

select dataName from v_RecommendTypeRepayMoney

--查询结果为null--- 异常结果

select d.dataName From paymoney pm
Left Join ProjectInfo pro On pro.ProjectNo = pm.payProjectNo
Left Join DataDictory d On d.DataId = pro.RecommendComPany

----查询结果为合作银行推荐---正常结果




仅把create 改为 alter 修改视图后,在使用select dataName from v_RecommendTypeRepayMoney

----查询结果为合作银行推荐---正常结果





------解决方案--------------------
重新建立个视图看看是否会有问题!

create view v_1
as
select d.dataName From paymoney pm
Left Join ProjectInfo pro On pro.ProjectNo = pm.payProjectNo
Left Join DataDictory d On d.DataId = pro.RecommendComPany

打开新的查询窗口,刷新下数据库

select dataName from v_1

是否有数据。
------解决方案--------------------
sql没这个规定
------解决方案--------------------
lz太帅了 建议lz贴出你建视图以及一些测试数据 脚本,让大家帮你分析
------解决方案--------------------
如果是已经建立过的视图,在修改表后未重新刷新视图就会出现这样的问题 ,重新刷新视图结构(指使用alter视图或使用sp_refreshview ViewName)后正常
------解决方案--------------------
探讨
大家有没有遇到过这种情况?