MySql编程错误记录

一、获取float类型字段失败

1. 错误描述:

利用ADO读取MySql的float类型数据,
数据库中也是定义的float类型,
可是用ADO获取这个数据就是一个类似4.1723251e-008的值。
数据集除了这一列,其他类型的列,如nchar(32)以及int类型等,均没有出现错误。

代码如下:

CADORecordset cRd;

float ddd = 0;
cRd.GetFieldValue("fltddd",ddd); 

此时ddd的值为类似4.1723251e-008的值

解决方案:

在bool CADORecordset::GetFieldValue(LPCTSTR lpFieldName, float& nValue)函数中,将

vtFld = m_pRecordset->Fields->GetItem(lpFieldName)->Value; 中的Value改为->GetValue();

代码:

//首先得到VARIANT类型的字段值
//vtFld = m_pRecordset->Fields->GetItem(lpFieldName)->Value;
vtFld = m_pRecordset->Fields->GetItem(lpFieldName)->GetValue(); 

原文地址:https://www.cnblogs.com/nanzhi/p/8603662.html