我已经打开记录集 并查询出一条记录 我想验证这条记录的第4项是否等于某值 
该怎么做 我的部分代码如下:
sr.Format("select * from usertable where uid='%s' and upwd='%s'",lid,lpwd);
m_lset.Open(sr);
_variant_t vars;
CString 
vars=m_lset.GetFieldValue(3);
suser="超级用户";
sa="管理员";
if((_bstr_t) vars==suser)
{
         strin="1";
}
else if((_bstr_t) vars==sa)
{
strin="2";
}
else
{
strin="3";
}
我知道类型不匹配  该怎么转换?

解决方案 »

  1.   

    啊 打错了 应该加上:CString suser,sa;
      

  2.   

    _variant_t vPassWordDB;
    CString strTemp;
    strTemp = (char*)_bstr_t(vPassWordDB);
    if(strTemp=strPassWord)
    ...
      

  3.   

    _variant_t vPassWordDB;
    CString strTemp;
    strTemp = (char*)_bstr_t(vPassWordDB);
    if(strTemp.CompareNoCase(suser)==0)
    {}
      

  4.   

    if( (CString)(LPCTSTR)(_bstr_t(vars))==suser )
    {
             strin="1";
    }
      

  5.   

    经过改动 代码如下:                  
                        _variant_t vars;
      vars=m_lset.GetFieldValue(3);
      str=(char*)_bstr_t(vars);
      suser="超级用户";
      sa="管理员";
      if(str.CompareNoCase(suser)==0)
      {
                   strin="1";
      }
      else if(str.CompareNoCase(sa)==0)
      {
      strin="2";
      }
      else
      {
      strin="3";
      }但是strin不论怎么都等于3 为什么??