通过OCI函数执行数据库sql,提取值到内存中进行处理,执行sql如下
select out_bytes/1024 from bf_discharge_info_t;
使用函数OCIDefineByPos进行绑定时,OCI类型使用的SQLT_INT,导致数据被取整,应该使用SQLT_FLT。
OCI数据类型与C语言数据类型对照表:
表字段类型 OCI类型 C类型 备注
Number(N) SQLT_UIN int 无符号整型
Number(N) SQLT_INT int 有符号整型
Number(n,m) SQLT_FLT float 符点数
Varchar2(N) SQLT_CHR Char 字符串
Raw(N) SQLT_BIN 具体看不同的定义 二进制类型,多用于一个结构字段
DATE SQLT_DAT 无 最好转换成字符串或数字