ORA-03115: unsupported network datatype or representation

测试实例如下:

SQL> CREATE OR REPLACE FUNCTION factorial
  2  ( n BINARY_DOUBLE ) RETURN BINARY_DOUBLE IS
  3  BEGIN
  4  IF n <= 1 THEN
  5  RETURN 1;
  6  ELSE
  7  RETURN n * factorial(n - 1);
  8  END IF;
  9  END factorial;
 10  /

函数已创建。

SQL> select factorial(4) from dual;
select factorial(4) from dual
                         *
ERROR 位于第 1 行:
ORA-03115: unsupported network datatype or representation

 

修改函数数据类型:

SQL> CREATE OR REPLACE FUNCTION factorial
  2  ( n number ) RETURN number IS
  3  BEGIN
  4  IF n <= 1 THEN
  5  RETURN 1;
  6  ELSE
  7  RETURN n * factorial(n - 1);
  8  END IF;
  9  END factorial;
 10  /

函数已创建。

SQL> select factorial(4.0) from dual;

FACTORIAL(4.0)
--------------
            24

SQL> select factorial(4) from dual;

FACTORIAL(4)
------------
          24


居然没有报错了,跟数据类型有关?

转载于:https://www.cnblogs.com/Alex-Zeng/archive/2012/08/16/2641594.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值