日期:2014-05-17  浏览次数:20829 次

用OCI,NUMBER(10)类型对应C程序用,应该定义什么类型?谢谢

用OCI,表中数据类型是number(10),对应的C程序中应该定义是什么类型?

如果定义为SQLT_UIN,无符号整形,那么在C程序中个,有可能会存在溢出情况,c程序中,无符号整形最大为4294967295

那么但数据中数据大于这个数据时,会报错,ORA-01406: fetched column value was truncated

这个应该如何解决?

------解决方案--------------------
用64位的int
------解决方案--------------------
_int64类型。
------解决方案--------------------
如果你的机器不支持64位,则将值转换成字符串再取出来处理。