大神为啥c++添加数据失败帮忙看看哈
大神为什么c++添加数据失败帮忙看看哈
登录可以但是添加不行
void CDlg1Name::OnOK()
{
UpdateData(TRUE);
if((m_zhanghao.IsEmpty()) || (m_mima.IsEmpty()))
{
MessageBox("账号或密码不能为空!");
return;
}
_RecordsetPtr m_pRs;
// TODO: Add extra validation here
m_Ado.OnInitADOConn();
CString sql="select*from denglubiao where UserName='"+m_zhanghao+"'and[Password]='"+m_mima+"'";
m_pRs=m_Ado.GetRecordSet((_bstr_t)sql);
if(!m_pRs->adoEOF)
{
MessageBox("用户名已存在");
return;
}
try
{
m_pRs->AddNew();
m_pRs->PutCollect("UserName", (_bstr_t)m_zhanghao);
m_pRs->PutCollect("PassWord", (_bstr_t)m_mima);
m_pRs->Update();
m_Ado.ExecuteSQL((_bstr_t)sql);
m_Ado.ExitConn();
MessageBox("添加成功");
}
catch(...)
{
MessageBox("注册失败");
return;
}
}
------解决思路----------------------
------解决思路----------------------
单步一下看那里出问题
------解决思路----------------------
先在数据库中测测你的sql语句有没有问题,再看看,数据有没有加载进来
------解决思路----------------------
请先在查询分析器中手动执行相关SQL语句,确认无误后,再在代码中运行,且最好在运行之前将对应SQL语句写到日志文件中。
登录可以但是添加不行
void CDlg1Name::OnOK()
{
UpdateData(TRUE);
if((m_zhanghao.IsEmpty()) || (m_mima.IsEmpty()))
{
MessageBox("账号或密码不能为空!");
return;
}
_RecordsetPtr m_pRs;
// TODO: Add extra validation here
m_Ado.OnInitADOConn();
CString sql="select*from denglubiao where UserName='"+m_zhanghao+"'and[Password]='"+m_mima+"'";
m_pRs=m_Ado.GetRecordSet((_bstr_t)sql);
if(!m_pRs->adoEOF)
{
MessageBox("用户名已存在");
return;
}
try
{
m_pRs->AddNew();
m_pRs->PutCollect("UserName", (_bstr_t)m_zhanghao);
m_pRs->PutCollect("PassWord", (_bstr_t)m_mima);
m_pRs->Update();
m_Ado.ExecuteSQL((_bstr_t)sql);
m_Ado.ExitConn();
MessageBox("添加成功");
}
catch(...)
{
MessageBox("注册失败");
return;
}
}
------解决思路----------------------
try
{
...
}
catch(_com_error& e)
{
e.Description();//查看具体错误
}
------解决思路----------------------
单步一下看那里出问题
------解决思路----------------------
先在数据库中测测你的sql语句有没有问题,再看看,数据有没有加载进来
------解决思路----------------------
请先在查询分析器中手动执行相关SQL语句,确认无误后,再在代码中运行,且最好在运行之前将对应SQL语句写到日志文件中。