老是从Toad中看着oracle的视图表一大堆的红叉,好长时间也没明白为什么有这么多invalid的视图,而且没见过有什么影响,程序什么的都用得好好的,也没见出过什么错是由这些“无效”上引起的,于是问题就放一边。直到有一天真想弄明白时,才知道原来这些“无效”状态来自视图所引用表的变化,如字段的变化,或者向数据库中导入数据(包括导入表、视图)时,就会让关联的视图变成invalid。
要让invalid变回valid,可以重新编译视图,如Toad中的compile view,或直接进入视图脚本,重新编辑保存(无需改变就直接再保存一遍),然后如果这个视图脚本无错的话,则会恢复成valid状态。
如果视图本身就有错,自然是invalid,就不是重新编译的事,要修正错误先,这个不用我多说。
>> 除非说明均为原创,如转载请注明来源于http://www.stormcn.cn/post/1418.html