1、学历EMP_GENDER性别EMP_BIRTHDAY生日EMP_HOMETOWN籍贯char(20)EMP_COUNTYR国籍char(30)EMP_NATION民族EMP_ID身份证号EMP_MARRIAGE婚姻状况EMP_HEALTY健康状况EMP_STARTWORK参加工作时间EMP_STATE员工状态EMP_HOMEADDRESS家庭住址EMP_TELENO联系电话char(15)EMP_EMAIL联系EMAIL地址EMP_JOB_ID工作岗位代号char(8)JOB工作岗位情况表JOB_IDJOB_NAME工作岗位名称SALARY工资信息表EMP_SALARY员工工资PATIENT病
2、人信息表PNAME病人姓名PGENDRE病人性别PDATESTART入院时间PDEPT病人所属科室PSTATE病人状况PDOC主治医生PROOM病人房间号PBED病人病床号ROOM房间信息表房间号病床号PROOMSTATE房间状态BED病床信息表PBEDSTATE病床状态POTION药剂信息表POTION_ID药剂代号POTION_NAME药剂名称POTION_PRICE药剂价格POTION_QUANTITY药剂库存数量POTION_REM备注APPARATUR医疗信息表APPARTUS_IDAPPARTUS_NAMEAPPARTUS_PRICEAPPARTUS_QUANTITYAPPARTU
3、S_REM2.全局ER图 3.数据库的建立CREATE TABLE JOB( JOB_ID CHAR(5), JOB_NAME CHAR(20), PRIMARY KEY(JOB_ID);CREATE TABLE BASE( EMP_NO CHAR(10) , EMP_NAME CHAR(8), EMP_DEPT_ID CHAR(5), EMP_DUTY CHAR(8), EMP_XL CHAR(5), EMP_GENDER CHAR(2), EMP_BIRTHDAY CHAR(9), EMP_HOMETOWN CHAR(20), EMP_COUNTRY CHAR(5), EMP_NATION
4、 CHAR(8), EMP_ID CHAR(19), EMP_MARRIAGE CHAR(5), EMP_HEALTH CHAR(5), EMP_STARTWORK CHAR(9), EMP_STATE CHAR(5), EMP_HOMEADDRESS CHAR(30), EMP_TELENO CHAR(12), EMP_EMAIL CHAR(20), EMP_JOB_ID CHAR(5), PRIMARY KEY(EMP_NO), FOREIGN KEY(EMP_JOB_ID) REFERENCES JOB(JOB_ID);CREATE TABLE DEPT( DEPT_ID CHAR(4)
5、, DEPT_NAME CHAR(8), DEPT_MANAGER CHAR(10), DEPT_VICEMANAER CHAR(10) PRIMARY KEY(DEPT_ID);create table salary(EMP_NO CHAR(10) , emp_salary char(10), primary key(EMP_NO), foreign key(EMP_NO) references base(EMP_NO);create table room(room char(4) not null,proomstate char(6),primary key(proom)create ta
6、ble bed( proom char(4) not null, pbed char(4) not null, pbedstate char(5) primary key(pbed), foreign key(proom) references room(proom);create table patient(pname char(8) not null, pgender char(8), pdata_state char(9), pdept char(8), pstate char(8), pdoc char(10), proom char(4), pbed char(4), primary
7、 key(pname), foreign key(pbed) references bed(pbed), foreign key(proom) references room(proom), foreign key(pdoc) references base(EMP_no) );create table potion( iid char(10) not null, iname char(20), price char(10), shuliang char(10), rem char(50);create table appratus( iid char(10) not null, price
8、char(10), shuliang char(10),三、各个模板功能实现1.入院登记功能实现:病人进行姓名,性别等基本情况登记,登记时可查看病房病床信息。代码实现:UpdateData(TRUE);_ConnectionPtr m_pConnection;_RecordsetPtr pRst(_uuidof(Recordset);:CoInitialize(NULL);Trym_pConnection。CreateInstance(”ADODB。Connection_bstr_tstrConn=”Provider=SQLOLEDB.1;Integrated Security=SSPI;Pe
9、rsist Security Info=False;Initial Catalog=hospitalMSQL;Data Source=431-18;m_pConnectionOpen(strConn,”,adModeUnknown);catch(_com_error e) ::CoUninitialize(); AfxMessageBox(e。ErrorMessage(); return;/连接数据库,在后面将不再重复展示_variant_t ra;_bstr_t strAdd=INSERT INTO patient VALUES(;strAdd = strAdd+m_name+,strAdd
10、 = strAdd+m_sex+,”;strAdd = strAdd+m_date+”;strAdd = strAdd+m_dept+,strAdd = strAdd+m_state+strAdd = strAdd+m_doc+,”;strAdd = strAdd+m_room+”,trAdd = strAdd+m_bed+)”;_bstr_t strAdd2=”UPDATE bed SET pbedstate=strAdd2 = strAdd2+非空”+”; WHERE pbed=”+m_bed;m_pConnection-Execute(strAdd,&ra,adCmdText);m_pC
11、onnectionExecute(strAdd2,ra,adCmdText);m_pConnectionClose();/ AfxMessageBox(成功更新数据!”);m_adodc2。SetRecordSource(”SELECT FROM bed);Refresh();UpdateData(FALSE);AfxMessageBox(登记成功,您将进入住院信息页面,您可以在此查看相关信息!”);m_adodc1.SetRecordSource(”SELECT FROM BASEm_adodc1.Refresh();m_name=m_sex=”m_date=”;m_dept=”;m_sta
12、te=”;m_doc=”m_room=”m_bed=”/登记完后清楚输入框zhuyuan b;b.DoModal();2.入院信息功能实现可查看正在住院人的信息以及病床信息代码实现if(SYes=1)/通过SYes来控制是根据什么查找的CString str=select pname,pgender,pdata_state,pdept,pstate,proom,pbed,emp_name from base,patient where base。emp_no=patient。pdoc and pname=”+m_neirong+”;m_adodc1。SetRecordSource(str);m
13、_adodc1.Refresh();UpdateData(FALSE);else if(SYes=2)CString str=select pname,pgender,pdata_state,pdept,pstate,proom,pbed,emp_name from base,patient where base.emp_no=patient。pdoc and emp_name=+m_neirong+”m_adodc1.SetRecordSource(str);else if(SYes=3)CString str=select pname,pgender,pdata_state,pdept,p
14、state,proom,pbed,emp_name from base,patient where base.emp_no=patient。pdoc and pdept=+m_neirong+”SetRecordSource(str);Refresh();3.病人出院实现病人的删除CColumn col;VARIANT v_ColNum,v_Value;cols=m_datagrid1。GetColumns();v_ColNum.vt=VT_I2;v_ColNum.iVal=7;col=cols。GetItem(v_ColNum);v_Value=col.GetValue();CString
15、tmp=v_Value。bstrVal;CString tmp2=确认要删除编号为+tmp+的记录吗?if(MessageBox(tmp2,_T(”数据删除提示),MB_YESNO|MB_ICONSTOP)!=IDYES)return;ConnectionPtr pConn;CoInitialize(NULL);try pConn。CreateInstance(ADODB.Connection”); _bstr_t strConn=”Provider=SQLOLEDB。1;Persist Security Info=False;Data Source=431-18”;pConn-”,”,adM
16、odeUnknown);/ if(pConn-State=adStateOpen) MessageBox(成功连接数据库catch(_com_error e) :CoUninitialize(); AfxMessageBox(e.ErrorMessage(); return;_variant_t ra;_bstr_t strAdd2=UPDATE bed SET pbedstate=”;strAdd2 = strAdd2+”空”+” WHERE pbed=+tmp;_bstr_t strAdd=”DELETE FROM patient WHERE pbed=”;strAdd=strAdd+Ex
17、ecute(strAdd2,&ra,adCmdText);Execute(strAdd,ra,adCmdText);pConnClose();AfxMessageBox(”成功更新数据!m_adodc1.SetRecordSource(”SELECT FROM patientSetRecordSource(SELECT * FROM bed”);4.新人注册对新的员工进行员工号等基本信息录入_bstr_t strAdd=”INSERT INTO base VALUES(”;strAdd = strAdd+m_id+,”;strAdd = strAdd+m_name+”,strAdd = str
18、Add+m_dept+”,strAdd = strAdd+m_duty+”,”;strAdd = strAdd+m_xl+”,strAdd = strAdd+m_sex+”,strAdd = strAdd+m_bir+”,strAdd = strAdd+m_hm+”strAdd = strAdd+m_cry+strAdd = strAdd+m_nation+”,”;strAdd = strAdd+m_idcard+”,”;strAdd = strAdd+m_mar+”strAdd = strAdd+m_hea+”strAdd = strAdd+m_setime+,”;strAdd = strA
19、dd+m_homedas+strAdd = strAdd+m_teleno+”strAdd = strAdd+m_email+,strAdd = strAdd+m_jobid+”)INSERT INTO job VALUES(strAdd2 = strAdd2+m_jobid+strAdd2 = strAdd2+m_gangwei+”)”;_bstr_t strAdd3=”INSERT INTO salary VALUES(strAdd3 = strAdd3+m_id+”strAdd3 = strAdd3+m_gongzi+”m_pConnectionExecute(strAdd2,ra,ad
20、CmdText);Execute(strAdd3,&m_pConnectionClose();AfxMessageBox(”注册成功!SELECT FROM BASEm_id=m_name=”m_dept=m_duty=”;m_xl=m_sex=”;m_bir=”m_hm=m_cry=”;m_nation=m_idcard=m_mar=m_hea=m_setime=m_state=”m_homedas=m_teleno=m_email=”;m_jobid=m_gongzi=”m_gangwei=5.在职员工实现对员工及其工资的查询,工资查询需要进行权限检查if(m_SelectYes=1)CS
21、tring str=select * from base where 员工姓名=+m_name+”m_name=”;else if(m_SelectYes=2)CString str=”select * from base where 员工号=”+m_id+”;m_id=”else if(m_SelectYes=3)select from base where 工作岗位代号=+m_dept+6.人事调动完成对员工的删除与对员工信息的修改员工信息修改_bstr_t strAdd=”UPDATE base SET EMP_DEPT_ID=,EMP_DUTY=strAdd = strAdd+m_du
22、ty+”,EMP_EMAIL=strAdd = strAdd+m_email+”,EMP_HOMEADDRESS=”;strAdd = strAdd+m_hds+,EMP_JOB_ID=strAdd = strAdd+m_jobid+”,EMP_TELENO=strAdd = strAdd+m_tele+,EMP_XL=strAdd = strAdd+m_xueli+strAdd = strAdd+ WHERE EMP_NO=+m_id;UPDATE salary SET emp_salary=”;strAdd2 = strAdd2+m_gongzi+” WHERE EMP_NO=”+m_id;_bstr_t strAdd3=UPDATE job SET job_id=strAdd3 = strAdd3+m_jobid+,job_
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1