详细讲解Oracle中isnumeric的三种实现Oracle认证考试

文章作者 100test 发表时间 2009:08:21 19:19:09
来源 100Test.Com百考试题网


"tbbnc">   许多用过ASP的朋友对isnumeric函数都有一定的了解,这是一个常用的判断入参是否为数字的函数。而在Oracle中没有现成的判断是否为数字函数,下面我们就来介绍一下如何用三种方法来将其实现:
  1. 利用 to_number
  CREATE OR REPLACE FUNCTION isnumeric (str IN VARCHAR2)
  RETURN NUMBER
  IS
  v_str FLOAT.
  BEGIN
  IF str IS NULL
  THEN
  RETURN 0.
  ELSE
  BEGIN
  SELECT TO_NUMBER (str)
  INTO v_str
  FROM DUAL.
  EXCEPTION
  WHEN INVALID_NUMBER
  THEN
  RETURN 0.
  END.
  RETURN 1.
  END IF.
  END isnumeric.
  2. 利用 regexp_like
  CREATE OR REPLACE FUNCTION isnumeric (str IN VARCHAR2)
  RETURN NUMBER
  IS
  BEGIN
  IF str IS NULL
  THEN
  RETURN 0.
  ELSE
  IF regexp_like (str, ^(-{0,1} {0,1})[0-9] (.{0,1}[0-9] )$)
  THEN
  RETURN 1.
  ELSE
  RETURN 0.
  END IF.
  END IF.
  END isnumeric.
  3. 利用 TRANSLATE
  CREATE OR REPLACE FUNCTION isnumeric (str IN VARCHAR2)
  RETURN NUMBER
  IS
  v_str VARCHAR2 (1000).
  BEGIN
  IF str IS NULL
  THEN
  RETURN 0.
  ELSE
  v_str := TRANSLATE (str, .0123456789, .).
  IF v_str = . OR v_str = . OR v_str = -. OR v_str IS NULL
  THEN
  RETURN 1.
  ELSE
  RETURN 0.
  END IF.
  END IF.
  END isnumeric.

  编辑特别推荐:

  oracle认证考试费用

  Oracle的入门心得

  使用Oracle外部表的五个限制

  Oracle服务器参数文件维护的四个技巧



相关文章


Oracle9i中自动撤销管理的优点分析Oracle认证考试
调查显示MySQL进一步蚕食Oracle市场Oracle认证考试
如何快速解决Oracle数据库中的常见问题Oracle认证考试
Oracle中不同用户间数据的导入导出Oracle认证考试
详细讲解Oracle中isnumeric的三种实现Oracle认证考试
对一些代码加密后再放到Oracle数据库中Oracle认证考试
通过Oracle发送Email的实现方法Oracle认证考试
Oracle恢复管理器应用浅析Oracle认证考试
Oracle服务器参数文件维护的四个技巧Oracle认证考试
澳大利亚华人论坛
考好网
日本华人论坛
华人移民留学论坛
英国华人论坛