【发布时间】:2019-03-19 14:51:18
【问题描述】:
当我尝试在 SQL Developer 中运行此查询时,为什么会出现错误:
DECLARE
p_latitude number;
BEGIN
p_latitude:=TO_NUMBER(LTRIM(RTRIM(REGEXP_SUBSTR('BT1 1AA|54.60240|-5.92214|875082434', '[^|]+', 1, 2),'"'),'"'));
END;
错误:
ORA-06502:PL/SQL:数字或值错误:字符到数字的转换错误
ORA-06512: 在第 4 行
谁能帮我解决这个错误?
预期输出:
54.60240
【问题讨论】:
-
你能发布
select value from nls_session_parameters where parameter = 'NLS_NUMERIC_CHARACTERS';的输出吗? -
输出是,.
-
由于您应该读取由
"."分隔的小数,因此没有理由将其设置为,.,很可能是错误的?阅读this的回答,了解错误详情及修改方法