欢迎来到天天文库
浏览记录
ID:41037301
大小:48.50 KB
页数:4页
时间:2019-08-14
《MFV_ODBC数据库编程》由会员上传分享,免费在线阅读,更多相关内容在工程资料-天天文库。
1、实验十 ODBC数据库编程一、实验目的:1.学习VC++6.0中MFC应用程序的运用。2.学习、运用ODBC数据库编程。二、实验环境:一台PC机VC++6.0、Windowsxp或Windows7操作系统三、实验内容:创建一个基于CListView的单文档应用程序Ex_ODBC,用来操作ODBC源,“用于MFCODBC的数据库”中指定数据库的score表。初始时列表中以报表样式显示出score表当前的记录内容。单击“操作”顶层菜单的下拉项“添加”、“修改”及“删除”可对score表进行相应操作,必要时还弹出“课程成绩信息”对话框四、实验记录1.创建数据库,在sqlserver200
2、5创建数据库并创建一个score的表:2.在计算机中添加一个名为mystudent的ODBC数据源。3.创建一个基于CListView的单文本运用程序,命名为Ex_ODBC。4.在stdaf.h中文件中添加ODBC数据库支持的头文件包含#include,在MFCClassWizard为数据库中的表score添加CRecordset的派生类CScoreset作为表score的映射类。5.在Menu中添加“操作”顶层菜单,并在其下添加“添加”、“删除”、“修改”菜单项,命名ID。6.在CEx_ODBCView::PreCreateWindow函数初始视图,添加代码如下
3、:BOOLCEx_ODBCView::PreCreateWindow(CREATESTRUCT&cs){cs.style
4、=LVS_REPORT;returnCListView::PreCreateWindow(cs);}7.在CEx_ODBCView::OnInitialUpdate函数中添加下列代码:voidCEx_ODBCView::OnInitialUpdate(){CListView::OnInitialUpdate();CListCtrl&m_ListCtrl=GetListCtrl();m_ListCtrl.SetExtendedStyle(LVS_EX_FULLRO
5、WSELECT);CScoreSetcSet;cSet.Open();CODBCFieldInfofield;for(UINTi=0;i6、temData(){CListCtrl&m_ListCtrl=GetListCtrl();m_ListCtrl.DeleteAllItems();CScoreSetcSet;cSet.m_strSort="studentno,courseno";cSet.Open();intnItem=0;CStringstr;while(!cSet.IsEOF()){for(UINTi=0;i7、SetItemText(nItem,i,str);}nItem++;cSet.MoveNext();}cSet.Close();}8.为“添加”菜单项添加映射函数OnOpAdd()添加代码:voidCEx_ODBCView::OnDblclk(NMHDR*pNMHDR,LRESULT*pResult){CListCtrl&m_ListCtrl=GetListCtrl();POSITIONpos;pos=m_ListCtrl.GetFirstSelectedItemPosition();if(pos==NULL){MessageBox("应双击要修改的列表项");return;}in8、tnItem=m_ListCtrl.GetNextSelectedItem(pos);CStringstrStuNO=m_ListCtrl.GetItemText(nItem,0);CStringstrCourseNO=m_ListCtrl.GetItemText(nItem,1);CScoresetsSet;sSet.m_strFilter.Format("studentno='%s'ANDcourseno='%s'",strStuNO,strCourseNO);s
6、temData(){CListCtrl&m_ListCtrl=GetListCtrl();m_ListCtrl.DeleteAllItems();CScoreSetcSet;cSet.m_strSort="studentno,courseno";cSet.Open();intnItem=0;CStringstr;while(!cSet.IsEOF()){for(UINTi=0;i7、SetItemText(nItem,i,str);}nItem++;cSet.MoveNext();}cSet.Close();}8.为“添加”菜单项添加映射函数OnOpAdd()添加代码:voidCEx_ODBCView::OnDblclk(NMHDR*pNMHDR,LRESULT*pResult){CListCtrl&m_ListCtrl=GetListCtrl();POSITIONpos;pos=m_ListCtrl.GetFirstSelectedItemPosition();if(pos==NULL){MessageBox("应双击要修改的列表项");return;}in8、tnItem=m_ListCtrl.GetNextSelectedItem(pos);CStringstrStuNO=m_ListCtrl.GetItemText(nItem,0);CStringstrCourseNO=m_ListCtrl.GetItemText(nItem,1);CScoresetsSet;sSet.m_strFilter.Format("studentno='%s'ANDcourseno='%s'",strStuNO,strCourseNO);s
7、SetItemText(nItem,i,str);}nItem++;cSet.MoveNext();}cSet.Close();}8.为“添加”菜单项添加映射函数OnOpAdd()添加代码:voidCEx_ODBCView::OnDblclk(NMHDR*pNMHDR,LRESULT*pResult){CListCtrl&m_ListCtrl=GetListCtrl();POSITIONpos;pos=m_ListCtrl.GetFirstSelectedItemPosition();if(pos==NULL){MessageBox("应双击要修改的列表项");return;}in
8、tnItem=m_ListCtrl.GetNextSelectedItem(pos);CStringstrStuNO=m_ListCtrl.GetItemText(nItem,0);CStringstrCourseNO=m_ListCtrl.GetItemText(nItem,1);CScoresetsSet;sSet.m_strFilter.Format("studentno='%s'ANDcourseno='%s'",strStuNO,strCourseNO);s
此文档下载收益归作者所有