日期:2014-05-16  浏览次数:20664 次

Nagios check_oracle_health 关于执行SQL问题
check_oracle_health中执行sql语句,不接受 像 select count(*) from temptable; 而要把它转换格式。
否则会报如下错误。
Use of uninitialized value in numeric gt (>) at /usr/local/nagios/libexec/check_oracle_health line 3919.
Use of uninitialized value in numeric gt (>) at /usr/local/nagios/libexec/check_oracle_health line 3920.
 转换成这种格式就行了
  select%20nvl%28sum%28case%20when%20t%2Edtvalue%3C117%20then%201%20else%200%20end%29%2C0%29%20yellow%2C%20nvl%28sum%28case%20when%20t%2Edtvalue%3E%3D117%20then%201%20else%200%20end%29 %2C0%29%20r

 (这是别人写的,我不知道他是咋转的)
 但是我在http://www.albionresearch.com/misc/urlencode.php 网站上把我的SQL语句转换,但是不行。
我猜想可能不是这种格式,但我把它的语句放在这个网站上可以转换成我们能看懂的SQL语句。我就不明白了。有类似经验的赐教。

 

------解决方案--------------------
探讨

自己搞定了。