首 页IT知识库翔宇问吧收藏内容
当前位置:翔宇亭IT乐园IT知识库数据库Oracle

Oracle一则诡异的程序

减小字体 增大字体 作者:不详  来源:华军资讯  发布时间:2010-02-11 21:02:00

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

  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上测试的。不知后续版本是否有所改变,没有测试。

微信搜索“优雅的代码”关注本站的公众号,或直接使用微信扫描下面二维码关注本站公众号,以获取最新内容。

个人成长离不开各位的关注,你的关注就是我继续前行的动力。

Tags:Oracle

知识评论评论内容只代表网友观点,与本站立场无关!

   评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
愿您的精彩评论引起共鸣,带来思考和价值。
用户名: 查看更多评论
分 值:100分 90分 80分 70分 60分 40分 20分
内 容:
验证码:
关于本站 | 网站帮助 | 广告合作 | 网站声明 | 友情连接 | 网站地图
本站部分内容来自互联网,如有侵权,请来信告之,谢谢!
Copyright © 2007-2022 biye5u.com. All Rights Reserved.