[求助]ado中如何判断一个记录是否存在,如果不存在可以添加记录
*********出错的程序**********CString strSql;
if(m_radio==0)
{
strSql.Format("select * from users where name='%s' and code='%s'",m_user1,m_code1);
}
else
{
strSql.Format("select * from experts where name='%s' and code='%s'",m_user1,m_code1);
}
BSTR bstrSQL = strSql.AllocSysString();
****************************出错的地方***************************************************************
theApp.m_pRecordset->Open(bstrSQL,(IDispatch*)theApp.m_pConnection,adOpenDynamic,adLockOptimistic,adCmdText);
if(theApp.m_pRecordset->GetRecordCount()==0)
*************************************************************************************************
{
theApp.m_pRecordset->AddNew();
theApp.m_pRecordset->PutCollect("name",_variant_t(m_user1));
theApp.m_pRecordset->PutCollect("code",_variant_t(m_code1));
theApp.m_pRecordset->Update();
AfxMessageBox("帐号创建成功");
}
else
{
AfxMessageBox("帐号已存在");
m_user1="";
UpdateData(FALSE);
return;
}
*************************************************
以上程序主要是if(theApp.m_pRecordset->GetRecordCount()==0)返回不了正确的值
如果我改一下,用 theApp.m_pRecordset->Open(bstrSQL,(IDispatch*)theApp.m_pConnection,adOpenStatic,adLockUnspecified,adCmdText); 那么if(theApp.m_pRecordset->GetRecordCount()==0)就没问题了,但是做下面的添加的时候就会产生错误,
不知道该怎么修改才能用GetRecordCount()判断记录是否存在,如果不存在,做添加动作?或者有其他更好的方法判断一个记录是否存在,然后添加记录?