m_AdoConn.m_pRecordset = m_AdoConn.GetRecordSet((_bstr_t)sql);
while(!m_AdoConn.m_pRecordset->adoEOF)
{
m_Grid.InsertItem(i,"");
m_Grid.SetItemText(i,0,(char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("UserNo"));
m_Grid.SetItemText(i,1,(char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("Username"));
m_Grid.SetItemText(i,2,(char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("Userlogin"));
m_Grid.SetItemText(i,3,(char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("Userpwd"));
m_Grid.SetItemText(i,4,(char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("UserID"));
m_Grid.SetItemText(i,5,(char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("Usertel"));
m_Grid.SetItemText(i,6,(char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("Useradd"));
m_Grid.SetItemText(i,7,(char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("User"));
m_AdoConn.m_pRecordset->MoveNext();
i++;
}
这个循环读取字段值时,为NULL时,出现错误,怎么样判断为空时直接输出一个固定值??
while(!m_AdoConn.m_pRecordset->adoEOF)
{
m_Grid.InsertItem(i,"");
m_Grid.SetItemText(i,0,(char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("UserNo"));
m_Grid.SetItemText(i,1,(char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("Username"));
m_Grid.SetItemText(i,2,(char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("Userlogin"));
m_Grid.SetItemText(i,3,(char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("Userpwd"));
m_Grid.SetItemText(i,4,(char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("UserID"));
m_Grid.SetItemText(i,5,(char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("Usertel"));
m_Grid.SetItemText(i,6,(char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("Useradd"));
m_Grid.SetItemText(i,7,(char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("User"));
m_AdoConn.m_pRecordset->MoveNext();
i++;
}
这个循环读取字段值时,为NULL时,出现错误,怎么样判断为空时直接输出一个固定值??
或者是数据库里表每个字段的值默认为空格" ",这样就不用判断了,这是在设计数据库里的表时定义的,每个字段都有各种属性,比如类型,大小,默认值,键值等属性
_variant_t var=m_AdoConn.m_pRecordset->GetCollect("UserNo");
if(var.vt != VT_NULL)
m_Grid.SetItemText(i,0,(LPCTSTR)(_bstr_t)var);
else
m_Grid.SetItemText(i,0,TEXT(""));