基于MYSQL的医院综合信息管理系统设计报告(共66页)_第1页
基于MYSQL的医院综合信息管理系统设计报告(共66页)_第2页
基于MYSQL的医院综合信息管理系统设计报告(共66页)_第3页
基于MYSQL的医院综合信息管理系统设计报告(共66页)_第4页
基于MYSQL的医院综合信息管理系统设计报告(共66页)_第5页
已阅读5页,还剩69页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、PAGE PAGE 74数据库实验报告医院(yyun)综合信息管理系统专 业 班 级 组 长 组 员 指导(zhdo)教师 目录(ml) TOC o 1-2 h z u HYPERLINK l _Toc374957450 一、需求(xqi)分析: PAGEREF _Toc374957450 h 2 HYPERLINK l _Toc374957451 1.1人员(rnyun)信息管理系统 PAGEREF _Toc374957451 h 2 HYPERLINK l _Toc374957452 1.2门诊信息管理系统 PAGEREF _Toc374957452 h 3 HYPERLINK l _To

2、c374957453 1.3收费信息管理系统 PAGEREF _Toc374957453 h 3 HYPERLINK l _Toc374957454 二、系统分析: PAGEREF _Toc374957454 h 3 HYPERLINK l _Toc374957455 2.1系统功能介绍 PAGEREF _Toc374957455 h 3 HYPERLINK l _Toc374957456 2.2功能模块 PAGEREF _Toc374957456 h 3 HYPERLINK l _Toc374957457 三、数据库设计: PAGEREF _Toc374957457 h 4 HYPERLIN

3、K l _Toc374957458 3.1 E-R图: PAGEREF _Toc374957458 h 4 HYPERLINK l _Toc374957459 3.2数据字典: PAGEREF _Toc374957459 h 6 HYPERLINK l _Toc374957460 四、前台设计: PAGEREF _Toc374957460 h 8 HYPERLINK l _Toc374957461 4.1.医生信息管理: PAGEREF _Toc374957461 h 8 HYPERLINK l _Toc374957462 4.2.病人信息管理: PAGEREF _Toc374957462 h

4、 8 HYPERLINK l _Toc374957463 4.3.药品信息管理: PAGEREF _Toc374957463 h 9 HYPERLINK l _Toc374957464 4.4.诊断界面: PAGEREF _Toc374957464 h 10 HYPERLINK l _Toc374957465 4.5.处方界面: PAGEREF _Toc374957465 h 10 HYPERLINK l _Toc374957466 4.6.病人处方查询: PAGEREF _Toc374957466 h 10 HYPERLINK l _Toc374957467 4.7.收费信息管理: PAGE

5、REF _Toc374957467 h 11 HYPERLINK l _Toc374957468 五、程序调试结果: PAGEREF _Toc374957468 h 12 HYPERLINK l _Toc374957469 六、总结: PAGEREF _Toc374957469 h 22内容提要(ni rn t yo) :本系统(xtng)是一个(y )基于MYSQL而建立的医院综合信息管理系统。用Microsoft Visual Studio 2010结合MYSQL开发了3个模块。包括有人员信息管理,门诊信息管理,收费信息管理。其中人员信息管理其中有医生信息管理,病人信息管理和药品信息管理。

6、门诊信息管理其中则含有就诊信息管理,病人处方管理。这3模块基本实现了医院综合信息管理系统的需求。【关键词】: Microsoft Visual Studio 2010,MYSQL,人员信息管理,门诊信息管理,收费信息管理需求分析:整个医院综合信息管理系统可分为三个子系统:人员信息管理系统,门诊信息管理系统,收费信息管理系统。1.1人员信息管理系统人员信息管理即对于人和物品的管理,人则包含医生及医护人员,就诊病人,还有药品等。我们需要对他们的基本信息进行记录,并且还要具有增加,删除,修改,查询等基本功能,所以我建立了一个基本信息管理模块来专门处理。我也在数据库中对应了三张表:doctor,pat

7、ient,durg以便对人员信息管理信息进行存储。1.2门诊信息管理系统对于就诊信息的管理,病人看病后会产生新的数据,例如医生对病人的诊断信息,以及药品处方信息。而与其对应的则是我做的门诊信息管理,其中我做了两个窗口,一个是诊断信息窗口,主要实现对诊断信息的储存;另一个是处方信息窗口,有增加、删除、修改药品等功能。然后我另做了一个查询的窗口,以便病人查询自己的处方记录。对应数据库,我做了两张表:diagnosis,prescription。1.3收费信息管理系统对于(duy)收费(shu fi)信息管理,病人拿到处方(chfng)后,就会取药,付款。则我需要对其总价进行计算,再者就是对于药品库

8、存进行修改。于是对应要求我做了一个收费前台。虽然在数据库中没有对应相应的表。可是它的操作主要是对prescription的读取,以及对durg库存的修改。二、系统分析:整个医院综合信息管理系统可分为三个子系统:人员信息管理系统,门诊信息管理系统,收费信息管理系统。2.1系统功能介绍2. 1. 1 人员信息管理系统的功能对医生、病人、药品的基本信息进行增加,删除,修改,查询等的基本功能2. 1. 2 门诊信息管理系统的功能对就诊信息的存储功能和对处方信息进行增加、删除、修改药品等的基本功能3. 2. 3 收费信息管理系统对医疗费用进行总和计算的功能和对药品库存进行修改的功能2.2功能模块系统主要

9、功能模块图如下:医院综合信息管理系统人员信息管理系统门诊信息管理系统收费信息管理系统医生信息管理病人信息管理药品信息管理就诊信息管理病人处方管理收费信息管理药品库存管理三、数据库设计(shj):3.1 E-R图:3.1.1医生(yshng)信息doctor E-R图namesexageemploynophonedoctor3.1.2病人(bngrn)信息patient E-R图namesexagepatientnonophonepatient3.1.3药品(yopn)信息drug E-R图drugdrugnononamenopricenoinventoryno3.1.4诊断(zhndun)信息

10、diagnosis E-R图diagnosisdiagnosisnononoemploynonopatientnonoconditionno3.1.5处方(chfng)信息prescription E-R图prescriptionprescriptionnononopatientnononamenotimenoaccount3.1.6实体(sht)间主要关系E-R图DoctorPaitientDurgDiagnosisPrescriptionN11111113.2数据(shj)字典:表1:doctor:表2:patient表3:durg表4:diagnosis表5:prescription四、

11、前台(qinti)设计:4.1.医生(yshng)信息管理:4.2.病人(bngrn)信息管理:4.3.药品(yopn)信息管理:4.4.诊断(zhndun)界面:4.5.处方(chfng)界面:4.6.病人(bngrn)处方查询:4.7.收费(shu fi)信息管理:五、程序调试结果(ji gu):1.主界面(jimin):2.添加(tin ji)功能:实现代码:void CEmployeeDlg:OnBnClickedOk()/ TODO: 在此添加控件通知(tngzh)处理程序代码/CDialogEx:OnOK();UpdateData(true);if(m_number.IsEmpty

12、()MessageBox(CString(编号(bin ho)不能为空”);return;if(m_name.IsEmpty()MessageBox(CString(名称(mngchng)不能为空!);return;if(m_idcard.IsEmpty()MessageBox(CString(省份证号码不能为空!);return;CADOConn m_AdoConn;m_AdoConn.OnInitADOConn();_bstr_t sql;sql = select* from doctor;_RecordsetPtr m_pRecordset; m_pRecordset=m_AdoConn

13、.GetRecordSet(sql);trym_pRecordset-AddNew();/添加新行m_pRecordset-PutCollect(employeeno,(_bstr_t)m_number);m_pRecordset-PutCollect(name,(_bstr_t)m_name);m_pRecordset-PutCollect(sex,(_bstr_t)m_sex);m_pRecordset-PutCollect(age,(_bstr_t)m_age);m_pRecordset-PutCollect(native,(_bstr_t)m_native); m_pRecordset

14、-PutCollect(nation,(_bstr_t)m_nation);m_pRecordset-PutCollect(office,(_bstr_t)m_office);m_pRecordset-PutCollect(position,(_bstr_t)m_position);m_pRecordset-PutCollect(idcard,(_bstr_t)m_idcard);m_pRecordset-PutCollect(phone,(_bstr_t)m_phone);m_pRecordset-Update();/更新数据库m_AdoConn.ExitConnect();/断开数据库连接

15、catch(.)MessageBox(CString(操作(cozu)失败);return;MessageBox(CString(保存(bocn)成功);m_grid.DeleteAllItems();/删除grid中原来(yunli)的数据CString str;str=select* from doctor;AddToGrid(str);/重新遍历2.修改功能:实现代码:void CEmployeeDlg:OnBnClickedChange()/ TODO: 在此添加控件通知处理程序代码UpdateData(true);CADOConn m_AdoConn;m_AdoConn.OnInit

16、ADOConn();CString tempSql;tempSql.Format(CString(UPDATEmydb.doctorSET name=%s,sex=%s,age=%s,native=%s,nation=%s,office=%s,position=%s,idcard=%s,phone=%sWHERE employeeno=%s),m_name,m_sex,m_age,m_native,m_nation,m_office,m_position,m_idcard,m_phone,m_number);m_AdoConn.ExecuteSQL(_bstr_t)tempSql);m_Ado

17、Conn.ExitConnect();MessageBox(CString(修改(xigi)成功.);m_grid.DeleteAllItems();/删除grid中原来(yunli)的数据CString str;str=select* from doctor;AddToGrid(str);/重新(chngxn)遍历3删除功能:代码(di m)实现:void CEmployeeDlg:OnBnClickedDelete()/ TODO: 在此添加控件通知(tngzh)处理程序代码UpdateData(true);CADOConn m_AdoConn;m_AdoConn.OnInitADOCon

18、n();CString tempSql;tempSql.Format(CString(delete from doctor where employeeno = %s),m_number);CString tenpstr;tenpstr.Format(CString(是否(sh fu)要删除%s的记录),m_name);if(MessageBox(tenpstr,CString(提示),MB_OKCANCEL)=IDOK)m_AdoConn.ExecuteSQL(_bstr_t)tempSql);m_AdoConn.ExitConnect();MessageBox(CString(删除成功.)

19、;m_grid.DeleteAllItems();/删除grid中原来的数据CString str; str=select* from doctor; AddToGrid(str);/重新遍历4.查询(chxn)功能:实现(shxin)代码:void CEmployeeDlg:OnBnClickedSelect()/ TODO: 在此添加(tin ji)控件通知处理程序代码m_grid.DeleteAllItems();UpdateData(true);CString str1,str2;int num1,num2;num1=m_combo.GetCurSel();if(0=num1)GetD

20、lgItem(IDC_EDIT_CONTENT)-GetWindowText(str1);str2=CString(select* from doctor where employeeno like )+CString()+str1+CString();AddToGrid(str2);/ 遍历功能信息记录if(1=num1)GetDlgItem(IDC_EDIT_CONTENT)-GetWindowText(str1);str2=CString(select* from doctor where name like )+CString()+str1+CString();AddToGrid(st

21、r2);/ 遍历功能信息记录if(2=num1)GetDlgItem(IDC_EDIT_CONTENT)-GetWindowText(str1);str2=CString(select* from doctor where office like )+CString()+str1+CString();AddToGrid(str2);/ 遍历功能(gngnng)信息记录if(3=num1)GetDlgItem(IDC_EDIT_CONTENT)-GetWindowText(str1);str2=CString(select* from doctor where position like )+C

22、String()+str1+CString();AddToGrid(str2);/ 遍历功能(gngnng)信息记录if(4=num1)GetDlgItem(IDC_EDIT_CONTENT)-GetWindowText(str1);str2=CString(select* from doctor where idcard like )+CString()+str1+CString();AddToGrid(str2);/ 遍历功能信息(xnx)记录if(5=num1)GetDlgItem(IDC_EDIT_CONTENT)-GetWindowText(str1);str2=select* fr

23、om doctor order by employeeno DESC;AddToGrid(str2);/ 遍历功能信息记录5.诊断界面:6.处方(chfng)界面(jimin):7.处方(chfng)查询:8.付款(f kun)界面:9.修改(xigi)库存:对比(dub)图:付款(f kun)前:付款(f kun)后:六、总结(zngji):通过(tnggu)这次数据库大作业,我们熟悉了vs2010的数据库ADO编程。对于它的添加,修改,删除(shnch)步骤都有了较大的理解。在此次作业当中遇到两大问题。一是:数据库连接问题,本来开始准备用access做后台,可是不知道为什么我的电脑一直连接

24、不上,于是改用了MYAQL连接。二是:在是使用记录集指针的问题_RecordsetPtr m_pRecordset,在实现添加,删除,修改,查询等操作时,只能执行一次就出现指针无效的结果。最后发现是在连接数据库时没有初始化COM,所以导致有指针无效的结果。然后,最让我开心的是,是实现总价的计算。我是用两个数组,amount20,和price20记住数量和单价,利用for循环计算总价的。然后,就是在 vs2010中字符之间的转换也是我们应该注意的问题。总之,这次实验,让我们学到了许多课本上学不到的知识,也锻炼了我们的思考问题,解决问题的能力。附录:医院综合信息管理系统源代码/ ADOConn.c

25、pp : 实现(shxin)文件/#include stdafx.h#include hospital.h#include ADOConn.h/ CADOConnCADOConn:CADOConn()CADOConn:CADOConn()/ CADOConn 成员(chngyun)函数bool CADOConn:OnInitADOConn(void)HRESULT hr;:CoInitialize(NULL);tryhr=m_pDBConnection.CreateInstance(ADODB.Connection);if(SUCCEEDED(hr)m_pDBConnection-Connec

26、tionTimeout=3;/设置(shzh)连接字符串_bstr_t strConnection=Driver=MySQL ODBC 5.2 Unicode Driver;SERVER=127.0.0.1;DATABASE=mydb;UID=root;PASSWORD=123456;PORT=3306;hr=m_pDBConnection-Open(strConnection,adModeUnknown);catch(_com_error e)/捕捉异常CString temp;temp.Format(CString(连接(linji)数据库错误信息:%s),e.ErrorMessage()

27、;:MessageBox(NULL,temp,CString(提示信息),NULL);return false;return false;/ 断开(dun ki)数据库连接void CADOConn:ExitConnect(void)if (m_pRecordset!=NULL) m_pRecordset-Close();m_pDBConnection-Close();/释放(shfng)环境:CoUninitialize();/ 获取记录集_RecordsetPtr& CADOConn:GetRecordSet(_bstr_t bstrSQL)tryif(m_pDBConnection=NU

28、LL) OnInitADOConn();m_pRecordset.CreateInstance(_uuidof(Recordset); m_pRecordset-Open(bstrSQL,m_pDBConnection.GetInterfacePtr(),adOpenDynamic,adLockOptimistic,adCmdText); catch(_com_error e)CString temp;temp.Format(CString(读取数据库错误信息:%s),e.ErrorMessage();:MessageBox(NULL,temp,CString(提示信息),NULL);retu

29、rn m_pRecordset;/ 执行(zhxng)SQL语句bool CADOConn:ExecuteSQL(_bstr_t bstrSQL)_variant_t RecordsAffected;try if(m_pDBConnection=NULL) OnInitADOConn();m_pDBConnection-Execute(bstrSQL,NULL,adCmdText);return true;catch(_com_error e)CString temp;temp.Format(CString(执行(zhxng)SQL语句错误信息:%s),e.Description();:Mes

30、sageBox(NULL,temp,CString(提示信息),NULL);return false;/ 返回(fnhu)记录集对象指针的SQL执行函数_RecordsetPtr CADOConn:ExcuteSQLObj(_bstr_t bstrSQL)try if(m_pDBConnection=NULL) OnInitADOConn(); m_pRecordset=m_pDBConnection-Execute(bstrSQL,NULL,adCmdText);catch(_com_error e)CString temp;m_pRecordset=NULL;temp.Format(CSt

31、ring(执行SQL语句错误信息:%s),e.ErrorMessage();:MessageBox(NULL,temp,CString(提示信息),NULL);return m_pRecordset;/ PrescriptionDlg.cpp : 实现(shxin)文件/处方(chfng):万淑妍#include stdafx.h#include hospital.h#include PrescriptionDlg.h#include afxdialogex.h#include ADOConn.h/ CPrescriptionDlg 对话框IMPLEMENT_DYNAMIC(CPrescrip

32、tionDlg, CDialogEx)CPrescriptionDlg:CPrescriptionDlg(CWnd* pParent /*=NULL*/): CDialogEx(CPrescriptionDlg:IDD, pParent)m_patientno = _T();m_amount = _T();m_name = _T();m_no = 0;CPrescriptionDlg:CPrescriptionDlg()void CPrescriptionDlg:DoDataExchange(CDataExchange* pDX)CDialogEx:DoDataExchange(pDX);DD

33、X_Control(pDX, IDC_LIST1, m_grid);DDX_Text(pDX, IDC_PATIENTNO, m_patientno);DDX_Text(pDX, IDC_AMOUNT, m_amount);DDX_Text(pDX, IDC_DURGNAME, m_name);DDX_Control(pDX, IDC_DATETIMEPICKER1, m_time);BEGIN_MESSAGE_MAP(CPrescriptionDlg, CDialogEx)ON_BN_CLICKED(IDOK, &CPrescriptionDlg:OnBnClickedOk)ON_BN_CL

34、ICKED(IDC_CHANGE, &CPrescriptionDlg:OnBnClickedChange)ON_NOTIFY(NM_CLICK, IDC_LIST1, &CPrescriptionDlg:OnNMClickList1)ON_BN_CLICKED(IDC_DELETE, &CPrescriptionDlg:OnBnClickedDelete)ON_BN_CLICKED(IDC_CLEAR, &CPrescriptionDlg:OnBnClickedClear)END_MESSAGE_MAP()/ CPrescriptionDlg 消息(xio xi)处理程序BOOL CPres

35、criptionDlg:OnInitDialog()CDialogEx:OnInitDialog();/ TODO: 在此添加(tin ji)额外的初始化flag=0;return TRUE; / return TRUE unless you set the focus to a control/ 异常(ychng): OCX 属性页应返回 FALSEvoid CPrescriptionDlg:AddToGrid(CString str)CADOConn m_AdoConn;m_AdoConn.OnInitADOConn();CString sql;sql.Format(str);_Recor

36、dsetPtr m_pRecordset;m_pRecordset = m_AdoConn.GetRecordSet(_bstr_t)sql);while(m_AdoConn.m_pRecordset-adoEOF=0)m_grid.InsertItem(0,CString();m_grid.SetItemText(0,0,(CString)(char*)(_bstr_t)m_pRecordset-GetCollect(prescriptionno);m_grid.SetItemText(0,1,(CString)(char*)(_bstr_t)m_pRecordset-GetCollect(

37、patientno);m_grid.SetItemText(0,2,(CString)(char*)(_bstr_t)m_pRecordset-GetCollect(name);m_grid.SetItemText(0,3,(CString)(char*)(_bstr_t)m_pRecordset-GetCollect(amount);m_grid.SetItemText(0,4,(CString)(char*)(_bstr_t)m_pRecordset-GetCollect(time);m_pRecordset-MoveNext();m_AdoConn.ExitConnect();Updat

38、eData(true);void CPrescriptionDlg:OnBnClickedOk()/ TODO: 在此添加控件通知(tngzh)处理程序代码/CDialogEx:OnOK();m_no=1;if(flag=0)m_grid.SetExtendedStyle(LVS_EX_FLATSB|LVS_EX_FULLROWSELECT|LVS_EX_HEADERDRAGDROP|LVS_EX_ONECLICKACTIVATE|LVS_EX_GRIDLINES);m_grid.InsertColumn(0,CString(处方(chfng)编号),LVCFMT_LEFT,100,0);m_

39、grid.InsertColumn(1,CString(病人(bngrn)编号),LVCFMT_LEFT,100,1);m_grid.InsertColumn(2,CString(药品名称),LVCFMT_LEFT,100,2);m_grid.InsertColumn(3,CString(使用数量),LVCFMT_LEFT,100,3);m_grid.InsertColumn(4,CString(用药时间),LVCFMT_LEFT,100,4);flag= !flag;/自动编号CADOConn m_AdoConn;m_AdoConn.OnInitADOConn();_bstr_t sql;s

40、ql = select prescriptionno from prescription;_RecordsetPtr m_pRecordset;m_pRecordset = m_AdoConn.GetRecordSet(_bstr_t)sql);while(m_AdoConn.m_pRecordset-adoEOF=0)if(m_noGetCollect(prescriptionno)m_no=(int)_ttoi(CString)(char*)(_bstr_t)m_pRecordset-GetCollect(prescriptionno);m_pRecordset-MoveNext();m_

41、AdoConn.ExitConnect();m_no+;CString str,str1;GetDlgItem(IDC_PATIENTNO)-GetWindowText(str1);str=CString(select* from prescription where patientno like )+CString()+str1+CString();AddToGrid(str);/ 遍历员工信息(xnx)记录UpdateData(true);if(m_patientno.IsEmpty()MessageBox(CString(病人(bngrn)编号不能为空!);return;if(m_nam

42、e.IsEmpty()MessageBox(CString(名称(mngchng)不能为空!);return;CADOConn m_AdoConn;m_AdoConn.OnInitADOConn();_bstr_t sql;sql = select * from prescription;_RecordsetPtr m_pRecordset; m_pRecordset=m_AdoConn.GetRecordSet(sql);/获取工作时间CTime time;m_time.GetTime(time);COleDateTime convert_time;convert_time.SetDate(

43、time.GetYear(),time.GetMonth(),time.GetDay();trym_pRecordset-AddNew();/添加新行m_pRecordset-PutCollect(patientno,(_bstr_t)m_patientno);m_pRecordset-PutCollect(name,(_bstr_t)m_name);m_pRecordset-PutCollect(amount,(_bstr_t)m_amount);m_pRecordset-PutCollect(time,(_variant_t)convert_time);m_pRecordset-PutCo

44、llect(prescriptionno,(_bstr_t)m_no);m_pRecordset-Update();/更新(gngxn)数据库m_AdoConn.ExitConnect();/断开(dun ki)数据库连接catch(.)MessageBox(CString(操作(cozu)失败);return;MessageBox(CString(保存成功.);m_grid.DeleteAllItems();/删除grid中原来的数据CString str,str1;GetDlgItem(IDC_PATIENTNO)-GetWindowText(str1);str=CString(selec

45、t* from prescription where patientno like )+CString()+str1+CString();AddToGrid(str);/ 遍历员工信息记录void CPrescriptionDlg:OnBnClickedChange()/ TODO: 在此添加控件通知处理程序代码UpdateData(true);CADOConn m_AdoConn;m_AdoConn.OnInitADOConn();/创建连接CString tempSql; /删除的字符类型为CStringCString sextemp;/获取用药时间CTime time; m_time.G

46、etTime(time);COleDateTime convert_time;convert_time.SetDate(time.GetYear(),time.GetMonth(),time.GetDay(); CString timetemp = convert_time.Format();tempSql.Format(CString(update mydb.prescription set name=%s,amount=%s,time=%s where name = %s),m_patientno,m_amount,timetemp,m_name); m_AdoConn.ExecuteSQ

47、L(_bstr_t)tempSql);m_AdoConn.ExitConnect();MessageBox(CString(修改(xigi)成功.);m_grid.DeleteAllItems();/删除grid中原来(yunli)的数据CString str;str=select * from prescription;AddToGrid(str);/重新(chngxn)遍历void CPrescriptionDlg:OnNMClickList1(NMHDR *pNMHDR, LRESULT *pResult)LPNMITEMACTIVATE pNMItemActivate = reinte

48、rpret_cast(pNMHDR);/ TODO: 在此添加控件通知处理程序代码int nItem=0;POSITION pos = m_grid.GetFirstSelectedItemPosition();if (pos = NULL) TRACE0(No items were selected!n);else while (pos) nItem = m_grid.GetNextSelectedItem(pos);/找到被选中的行号 TRACE1(Item %d was selected!n, nItem); /读取被选中行的数据m_patientno=m_grid.GetItemTex

49、t(nItem,1);m_name=m_grid.GetItemText(nItem,2);m_amount=m_grid.GetItemText(nItem,3);/处理用药时间COleVariant tempTimeStr;CString tempStr=m_grid.GetItemText(nItem,4);tempTimeStr=tempStr;tempTimeStr.ChangeType(VT_DATE);COleDateTime tempTime;tempTime=tempTimeStr;m_time.SetTime( tempTime);UpdateData(FALSE);/更新

50、对话框*pResult = 0;void CPrescriptionDlg:OnBnClickedDelete()/ TODO: 在此添加控件通知(tngzh)处理程序代码UpdateData(true);CADOConn m_AdoConn;m_AdoConn.OnInitADOConn();CString tempSql;tempSql.Format(CString(delete from prescription where name = %s),m_name);CString tempstr;tempstr.Format(CString(是否(sh fu)确定要删除%s记录),m_na

51、me);if(MessageBox(tempstr,CString(提示(tsh),MB_OKCANCEL)=IDOK)m_AdoConn.ExecuteSQL(_bstr_t)tempSql);/执行AQL语句,注意改成ADO的字符串m_AdoConn.ExitConnect();MessageBox(CString(删除成功.);m_grid.DeleteAllItems();/删除grid中原来的数据CString str; str=select* from prescription; AddToGrid(str);/重新遍历void CPrescriptionDlg:OnBnClick

52、edClear()/ TODO: 在此添加控件通知处理程序代码m_amount = _T();m_name = _T();UpdateData(false);/ PatientDlg.cpp : 实现文件/病人管理:吴婷#include stdafx.h#include hospital.h#include PatientDlg.h#include afxdialogex.h#include ADOConn.h/ CPatientDlg 对话框IMPLEMENT_DYNAMIC(CPatientDlg, CDialogEx)CPatientDlg:CPatientDlg(CWnd* pPare

53、nt /*=NULL*/): CDialogEx(CPatientDlg:IDD, pParent)m_age = _T();m_allergy = _T();m_content = _T();m_idcard = _T();m_name = _T();m_nation = _T();m_native = _T();m_phone = _T();m_no = _T();m_sex = _T();CPatientDlg:CPatientDlg()void CPatientDlg:DoDataExchange(CDataExchange* pDX)CDialogEx:DoDataExchange(

54、pDX);DDX_Text(pDX, IDC_EDIT_AGE, m_age);DDX_Text(pDX, IDC_EDIT_ALLERGY, m_allergy);DDX_Text(pDX, IDC_EDIT_CONTENT, m_content);DDX_Text(pDX, IDC_EDIT_IDCARD, m_idcard);DDX_Text(pDX, IDC_EDIT_NAME, m_name);DDX_Text(pDX, IDC_EDIT_NATION, m_nation);DDX_Text(pDX, IDC_EDIT_NATIVE, m_native);DDX_Text(pDX,

55、IDC_EDIT_PHONE, m_phone);DDX_Text(pDX, IDC_EDIT_NO, m_no);DDX_Text(pDX, IDC_EDIT_SEX, m_sex);DDX_Control(pDX, IDC_LIST_PATIENT, m_grid);DDX_Control(pDX, IDC_COMBO1, m_combo);BEGIN_MESSAGE_MAP(CPatientDlg, CDialogEx)ON_BN_CLICKED(IDOK, &CPatientDlg:OnBnClickedOk)ON_BN_CLICKED(IDC_CHANGE, &CPatientDlg

56、:OnBnClickedChange)ON_BN_CLICKED(IDC_DELETE, &CPatientDlg:OnBnClickedDelete)ON_BN_CLICKED(IDC_CLEAR, &CPatientDlg:OnBnClickedClear)ON_BN_CLICKED(IDC_SELECT, &CPatientDlg:OnBnClickedSelect)ON_NOTIFY(NM_CLICK, IDC_LIST_PATIENT, &CPatientDlg:OnNMClickListPatient)END_MESSAGE_MAP()/ CPatientDlg 消息(xio xi

57、)处理程序BOOL CPatientDlg:OnInitDialog()CDialogEx:OnInitDialog();/ TODO: 在此添加(tin ji)额外的初始化m_grid.SetExtendedStyle(LVS_EX_FLATSB|LVS_EX_FULLROWSELECT|LVS_EX_HEADERDRAGDROP|LVS_EX_ONECLICKACTIVATE|LVS_EX_GRIDLINES);m_grid.InsertColumn(0,CString(病人(bngrn)编号),LVCFMT_LEFT,100,0);m_grid.InsertColumn(1,CStrin

58、g(姓名),LVCFMT_LEFT,100,1);m_grid.InsertColumn(2,CString(性别),LVCFMT_LEFT,100,2);m_grid.InsertColumn(3,CString(年龄),LVCFMT_LEFT,100,3);m_grid.InsertColumn(4,CString(民族),LVCFMT_LEFT,100,4);m_grid.InsertColumn(5,CString(籍贯),LVCFMT_LEFT,100,5);m_grid.InsertColumn(6,CString(身份证号码),LVCFMT_LEFT,100,6);m_grid.

59、InsertColumn(7,CString(联系电话),LVCFMT_LEFT,100,7);m_grid.InsertColumn(8,CString(过敏史),LVCFMT_LEFT,100,8);m_combo.InsertString(0,CString(病人编号);m_combo.InsertString(1,CString(姓名);m_combo.InsertString(2,CString(身份证号码);m_combo.InsertString(3,CString(全部信息);m_combo.SetCurSel(3);CString str;str=select* from p

60、atient;AddToGrid(str);/ 遍历员工信息(xnx)记录return TRUE; / return TRUE unless you set the focus to a control/ 异常(ychng): OCX 属性页应返回 FALSEvoid CPatientDlg:AddToGrid(CString str)CADOConn m_AdoConn;m_AdoConn.OnInitADOConn();CString sql;sql.Format(str);_RecordsetPtr m_pRecordset;m_pRecordset = m_AdoConn.GetRec

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论