+ -
当前位置:首页 → 问答吧 → 急!!MFC VC+ADO addnew语句错误

急!!MFC VC+ADO addnew语句错误

时间:2011-12-13

来源:互联网

本人为莱鸟,不知道程序为什么出错~

程序部分代码如下:
_RecordsetPtr rs;
_ConnectionPtr conn;
void CMyADODlg2::OnBUTUpdate() 
{
if(signOfAddNew==1) //新增的记录
{  
rs->AddNew();///添加新记录 ///程序运行到这里就出错
 
signOfAddNew=0;
 
}
  UpdateData(TRUE);
rs->PutCollect("ID",(_variant_t)m_EditID);
rs->PutCollect("Name",(_variant_t)m_EditName);
rs->PutCollect("Height",(_variant_t)m_EditHeight); 
rs->PutCollect("Birthday",(_variant_t)m_EditBirthday);
rs->PutCollect("Occupation",(_variant_t)m_EditOccupation);
rs->PutCollect("Memo",(_variant_t)m_EditMemo);

try
{
rs->Update();
}
catch(_com_error e)
{
AfxMessageBox(e.Description());
}


if(signOfAddNew==1) //新增的记录
{
MessageBox("已成功添加记录!");
}
else
{
MessageBox("已成功更新记录!");
}
}

编译无错误,一运行,点击按钮
Runtime Error 
Program:*** 
This application has requests the runtime to terminate it in an unusual way 
.please contact the application 's support team for more inforation
如果加上try
{
rs->AddNew();
}
catch(_com_error e)
{
AfxMessageBox(e.Description());
}
在添加数据后,跳出 " 无法插入空行,行必须有一列值集"的窗口

在另一台机器上运行, 编译无错误,一运行,点击按钮报错abnormal program termination! 

作者: baobaotuzi   发布时间: 2011-12-13

Recordset没有执行open的操作就不能做下面的操作

作者: mayudong1   发布时间: 2011-12-13

数据库Connection要open,RecordSet也要Open

作者: LoveInSnowing   发布时间: 2011-12-13