暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 如何排除脚本中未更新的mviews?

askTom 2017-03-09
264

问题描述

你好,

我在Oracle GRID上有一个计划的作业,可以在未更新任何mviews时发送警报。但是我有三个mviews没有更新,我现在不能改变它。所以我需要更改我的脚本,以排除这三个mviews (只有这三个),不每天得到警报。

我不知道如何进行此更改。

你能帮我吗?


请参见以下脚本:


----------

变量exit_code编号;
将服务器输出设置为
声明
v_checa编号;
光标c1是选择mview_name,最后一次刷新 _ 日期
从dba_mviews,其中所有者 = 'TESTE' 和last_refresh_date
开始
: exit_code := 0;
选择计数 (*) 进入v_checa
从dba_mviews,其中所有者 = 'TESTE' 和last_refresh_date
如果v_checa >= 1,则
对于c1循环中的mview_rec
dbms_output.put_line('Mview '| | mview_rec.mview_name | | 'Last update' | | to_char(mview_rec.last_refresh_date,'dd/mm/yyyy hhh24: mi'));

结束循环;
: exit_code := 1;
如果结束;
结束;
/

exit :exit_code;



-------------------------

非常感谢

专家解答

你不把它们放在你的光标里吗?

cursor C is 
  select mview_name,last_refresh_Date
  FROM dba_mviews 
  WHERE owner = 'TESTE' 
  and last_refresh_date < sysdate - 1 
  and mview_name not in ('A','B','C');


我不会打扰count(*) 部分-无论您是否会在光标循环中获取行。
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论