【发布时间】:2013-10-14 20:23:44
【问题描述】:
我有一个带有 NUMBER 类型列的 Oracle 表,其中包含一系列浮点数。使用 Pro*C 将其读入 C 变量的正确方法是什么 我尝试了以下方法:
EXEC SQL BEGIN DECLARE SECTION;
static float o_start_x;
EXEC SQL END DECLARE SECTION;
EXEC SQL SELECT start_x
FROM my_table
INTO :o_start_x;
通常这不是很好,但是一些浮点数,特别是那些真正接近 0 的数(例如 1.4E-43)会导致以下错误:
ORA-01426: numeric overflow;
是否有正确/安全的读取此类值的方法,或者让 oracle 足够安全地转换类型的方法,从而允许精度损失?
【问题讨论】:
标签: c oracle oracle-pro-c