以下是我的测试功能:
create or replace FUNCTION test
RETURN NUMBER
AS
v_count number(15);
v_msisdn number(15);
BEGIN
v_msisdn:= 225952 * 10000;
-- v_msisdn:=50510060853 * 10000;
return v_msisdn;
END;
当我执行该功能时
select test() from dual;
我收到一个错误
1426. 00000 - "numeric overflow"
*Cause: Evaluation of an value expression causes an overflow/underflow.
但是,如果我更新
v_msisdn:=50510060853 * 10000;
我没有得到错误.
有人可以解释这个行为,因为第二个查询是一个更大的数字?