当前所在位置:珠峰网资料 >> 计算机 >> Oracle认证 >> 正文
Oracle数据库检查程序中一个非常诡异的程序
发布时间:2010/11/17 9:46:01 来源:www.xue.net 编辑:城市总裁吧

今天检查程序的时候,发现一个诡异的问题。如下所示。

function chkA_B return varchar2 as

a varchar2(10):=NULL;

b varchar2(10):='1';

begin

if a=b then

return 'Error';

end if;

return 'ok';

end;

这段程序诡异地返回ok,而不是Error. 通过跟踪,程序进入了 return 'error' .但是紧接着也执行了return 'ok'.

如果将if 的条件改为 if nvl(a,'0')=b 则程序正常。

上述诡异程序是在9i上测试的。不知后续版本是否有所改变,没有测试。

广告合作:400-664-0084 全国热线:400-664-0084
Copyright 2010 - 2017 www.my8848.com 珠峰网 粤ICP备15066211号
珠峰网 版权所有 All Rights Reserved