MFC透过ADO获取SQL中值为NULL的列
MFC通过ADO获取SQL中值为NULL的列
str=(char*)(_bstr_t)(theApp.m_pRecordset)->GetCollect("学号");
如上,当学号这一列,在SQL中值为NULL
MFC程序就会获取失败然后报错,如何在获取前判断是否为NULL呢?
------解决方案--------------------
数据先读入Variant类型变量中,判断是否为NULL,不是则赋给你要的变量中。
------解决方案--------------------
CString strSql=_T("");
_variant_t varSql;
varSql.Clear();
varSql=m_pRecordset->GetCollect(“学号”);
if(varSql.vt==VT_NULL
------解决方案--------------------
varSql.vt==VT_EMPTY)
{
.........................
}
else
varSql.ChangeType(VT_BSTR);
strSql=varSql.bstrVal;
------解决方案--------------------
++
str=(char*)(_bstr_t)(theApp.m_pRecordset)->GetCollect("学号");
如上,当学号这一列,在SQL中值为NULL
MFC程序就会获取失败然后报错,如何在获取前判断是否为NULL呢?
------解决方案--------------------
数据先读入Variant类型变量中,判断是否为NULL,不是则赋给你要的变量中。
------解决方案--------------------
CString strSql=_T("");
_variant_t varSql;
varSql.Clear();
varSql=m_pRecordset->GetCollect(“学号”);
if(varSql.vt==VT_NULL
------解决方案--------------------
varSql.vt==VT_EMPTY)
{
.........................
}
else
varSql.ChangeType(VT_BSTR);
strSql=varSql.bstrVal;
------解决方案--------------------
++