void CUsers::GetData(CString cUserName)

 _bstr_t vSQL;
 vSQL="SELECT * FROM Users WHERE UserName=cUserName";
 
 m_pRecordset.CreateInstance( __uuidof(Recordset)); m_pRecordset->Open(bstrSQL,m_pConnection.GetInterfaceP(),adOpenDynamic,adLockOptimistic,
adCmdText);
}我用ADO访问数据库,在CUsers::GetData 函数中我想用形参 cUserName 作为SQL 查询的条件,在运行的时候 出现  
"列名'cUserName'无效"  的错误,请问如何改正????????本人刚学VC不久,还请多多指教。

解决方案 »

  1.   

    vSQL="SELECT * FROM Users WHERE UserName= " + cUserName;
    你的cUserName是传进来的参数.
      

  2.   

    谢谢楼上的,我式拉参数能传进来拉,但是又出现新的问题啦!我传入SA 时即将 cUserName 赋值为SA 时出现 "列名'SA'无效"  的错误.
    我将vSQL改为如下就可以拉
    vSQL="SELECT * FROM Users WHERE UserName='SA'";请问是不是因为传参数时没有将单引号传入呀?那末怎末将单引号传入呀? 怎末解决?
    谢谢!
      

  3.   

    偶,我好笨呀!终于解决啦!
    vSQL="SELECT * FROM Users WHERE UserName='"+cUserName+"'";
    谢谢junguo(junguo) 拉