void CDlgModify::OnButtonOk()
{
UpdateData(TRUE);
if(m_strName.IsEmpty()) //判断联系人姓名是否为空
{
::MessageBox(NULL, "姓名不能为空!", "添加联系人", MB_OK|MB_ICONINFORMATION|MB_TASKMODAL);
return;
}
CString strSQL;
strSQL.Format("SELECT * FROM LinkInfo where PersonID = %s", m_strPersonID); //获取要修改的联系人信息的SQL语句
CLinkInfoSet LinkInfoSet;
TRY
{
LinkInfoSet.Open( AFX_DAO_USE_DEFAULT_TYPE, strSQL, 0); //打开记录集
if(!LinkInfoSet.CanUpdate()) //确定记录集是否可以更新
{
::MessageBox(NULL, "记录集不允许更新", "数据库操作", MB_OK|MB_ICONEXCLAMATION);
return;
}
LinkInfoSet.Edit(); //编辑当前记录
LinkInfoSet.m_Address = m_strAddress;
LinkInfoSet.m_Email = m_strEmail;
LinkInfoSet.m_Name = m_strName;
LinkInfoSet.m_Phone = m_strPhone;
LinkInfoSet.m_Postcode = m_strPostcode;
LinkInfoSet.Update();
LinkInfoSet.Close(); //关闭记录集
}
CATCH_ALL(e)
{
e->ReportError();
if (LinkInfoSet.IsOpen())
{
LinkInfoSet.Close();
}
::MessageBox(NULL, "检索数据库失败!", "数据库操作", MB_OK|MB_ICONEXCLAMATION);
return;
}
END_CATCH_ALL
UpdateData(FALSE);
CDialog::OnOK();
}