posts - 14,  comments - 22,  trackbacks - 0

今天,应用程序出现问题,一个页面的表格展现不出来。
左查右查,发现是这个表格查询的数据库视图不可用导致的。

针对这个视图做查询时,报错如下:
SQL0575N  不能使用视图或具体查询表
"DB2ADMIN.VIEW_BRAND_EXPORT_FLAG",因为它已经标记为不可用。  SQLSTATE=51024

问题1:
这是什么原因引起的?以前一直用的挺正常,怎么就突然不可用了呢。

Google了一把,IBM的官方资料有这么一个介绍:加入建立视图view_a,然后建立角色role_a,分配view_a的查询权限给role_a,然后把role_a分配给用户db2admin,之后使用db2admin用户可以查询视图view_a。但是当角色role_a的查询权限revoke的话,再用db2admin用户查询视图view_a是,就报错:SQL0575N  不能使用视图或具体查询表,因为它已经标记为不可用。  SQLSTATE=51024。详情见:http://www.ibm.com/developerworks/cn/db2/library/techarticles/dm-0808chengy/index.html
但是,可以肯定的是我这个问题不是由这个原因引起的。因为我们根本没有创建角色,我们使用db2admin用户直接访问视图的。
那问题出在哪儿呢?
我也不知道,以后再查吧。
问题2:
这个问题怎么解决呢?
我没有什么好办法。
比较菜:drop 该视图,然后找到建立该视图的SQL脚本,重新建立一遍,就OK了。

哪位高人对这个问题有了解,请把问题原因和解决办法分析一下吧!

posted on 2008-10-07 10:56 张老三 阅读(4040) 评论(2)  编辑  收藏

只有注册用户登录后才能发表评论。


网站导航: