使用ado遇到数据库中的NULL时的处理方法。

       在使用ado编程访问数据库时,如果指定的列里的值为NULL的话,使用如下语句将会产生运行错误。

CString temp = (char*)(_bstr_t)m_AdoConn.m_pRecordset->GetCollect("name");

       解决方法有两种,第一就是在数据库里将允许为空取消勾选,当然这种方法并不好。第二种方法就是判断_variant_t是否为空,判断后,就可以根据自己的需要进行进一步的处理了。具体的代码如下:

_variant_t vopen; vopen = m_AdoConn.m_pRecordset->GetCollect("name"); if (vopen.vt == VT_NULL) {     ......      //根据需要进行编写 } else {     ......     //根据需要进行编写 }

       这样,对于列为NULL的情况就不会出现异常了。

你可能感兴趣的:(数据库,null,错误,ADO)