10.7.6 收支信息删除的实现
当需要删除某条记录时,只需要在列表控件中选中记录,单击【删除收支信息】按钮则实现该操作。本模块在实现删除操作和前面添加、修改操作实现方式不同,采用直接执行SQL语句来实现。执行删除操作前需获取选中记录所对应的编号,可通过给列表控件添加LVN_ITEMCHANGED消息,在对应消息函数中获取。下面介绍删除操作具体实现代码。给【删除收支信息】按钮添加单击按钮消息函数,该消息函数中具体代码如下:
代码位置:见光盘中本章源代码的PAGE1类。
- 1 void PAGE1::OnDele()
//删除收支信息 - 2 {
- 3 CString str,str1;
- 4 int i=0;
- 5 if(mySet->IsOpen())
//记录集是否打开 - 6 mySet->Close();
//关闭记录集 - 7 mySet->Open();
//打开记录集 - 8 if(m_id=="")
//如果编号为空 - 9 {
- 10 MessageBox("请选择需要删除的记录","提示",
MB_OK|MB_ICONINFORMATION); - 11 return;
- 12 }
- 13 if(MessageBox("确定删除此记录吗 ","提示",
MB_YESNO|MB_ICONINFORMATION)==IDYES) - 14 {
- 15 str.Format("delete from licai where id=%s",m_id);
//构造删除语句 - 16 pdb->ExecuteSQL(str);
//执行删除操作 - 17 mySet->Requery();
//重新打开记录集 - 18 LOADDATA();
//在列表中显示数据 - 19 MessageBox("记录删除成功!","提示",MB_OK|MB_ICONINFORMATION);
//给出成功信息提示 - 20 m_id="";
//编号清空 - 21 }
- 22 }
第15~17行代码通过构造delete语句,使用数据库类CDatabase成员函数ExecuteSQL()执行查询操作。最后,通过Requery()函数重新打开记录集,完成记录集的更新。其中m_id是保存当前选中记录的编号。
【责任编辑:
云霞 TEL:(010)68476606】