
数据库应用基础课程设计报告.docx
12页本科生课程实践报告(数据库应用基础)题 目 医院检验项目管理系统学生姓名指导教师 学 院 专业班级学生学号计算机基础教学实验中心2015年 6 月 18 日一.目的数据库应用基础课程设计是在这门课程的学习后进行的一次全面的综合练 习,是对学生使用SQL Server数据库管理系统和Visual Basic应用程序开发工 具的训练在该环节通过对课程设计任务的分析与设计实现,将所学的理论知识 应用于实践编制出较为实用的软件从而更加系统地理解和掌握SQL Server数 据库管理系统和VB语言的基本概念、语言特点和编程技巧,掌握数据库系统设 计的基本方法,提高应用数据库技术进行数据管理以解决实际问题的能力医院检验项目管理系统的主要目标是支持医院医护人员的临床活动,收集 和处理病人的临床检验医疗信息,丰富和积累临床医学知识,并提供临床咨询、 辅助诊疗和辅助临床决策,提高医护人员的工作效率,为病人提供更多、更快、 更好的服务二.需求分析1. 数据需求数据库数据要相对完整,能较好反应病人的基本信息和检验数据,满足基本需求 基本信息主要包括病人信息、检验项目和检验结果等2. 系统需求Q.登录根据身份验证密码后登录。
系统管理员身份具备系统管理、病人基本信息管 理功能;检验医生身份具备修改本人密码、检验项目管理、查询统计功能;病人 身份只具备查询本人检验项目信息的功能Q.系统功能1、 系统管理包括添加、查询、修改、删除检验医生等2、 病人基本信息管理包括病人基本信息的录入、查询、修改和删除等3、 检验项目管理实现检验项目结果的录入、查询、修改和删除操作4、 查询统计:可以按病人、诊疗科室、样本等统计查询检验项目情况三、系统功能设计医院检验项目管理系统主要实现用户登陆、用户管理、病人信息管理检验项目及检验结果管理等,包含的系统功能模块如下图所示:相关过程及功能分析简述1. 系统管理的处理过程主要包含:用户登陆、查询用户、添加用户、修改 密码和系统退出2.病人基本信息管理包括病人信息的录入和查询以及维护,需要登记病人的 编号、姓名、年龄、性别、主治医生、诊疗科室、联系、密码病人信息维护过程主要包含:记录删除、记录修改3.检验项目管理主要包括:项目录入和查询以及维护,需要记录项目名称 样本、项目名称、单位、参考值4.检验结果可以按照病人、科室和样本进行查询四.数据库设计1.数据库概念设计实体联系模型图(E-R图)2.数据表设计系统管理员表WIN01411181&L..- dbd系總理员 W1N-0U11埶拒类型允诈Null值碎1char{10)n用户宅yarchar(50)_画亍密码chdr{10)检验医生表WIN01411181&L..- dbd系總理员 W1N-0U11埶拒类型允诈Null值碎1char{10)n用户宅yarchar(50)_画亍密码chdr{10)病人信息表- dbo病人信豈埶据娄型允诈Null值编号1char{:10)S姓茗uarchar(20)O性别char(:lQ)B年龄char(:10)团主治医生vardiar{2D)诊疗科窒vart±iar(50)E联系charflljS密码diarflD)圈检验项目表- W1N-014111B:列名数拥类型允许Null值►i窗匪每甜varchar(50j匣]样本vardiar{50)分项目営称ward-iar{50j单位char(ia)n参考值ndiar(:10)检验结果表WIN-01411181&1..-韭。
•检验第果 WIN-014111:列茗 埶厲塑型 允诈血II值char(lQ)E分项目容称varthar(50)E结杲varchar{50)E檢蛉者vard-iar(2J0)E送检曰期dBt亡園抿告日期dateE数据表的实现系统管理员表WlN-0141118181...^库-ribo^£^ffl^]jWJN01411:工号用户名摩码卜曹操2015012Q15Q2刘备2DL5Q2201503孙税201503AWNULLf^JLL检验医生表WIN-014111S181...库-北6摘验医生 WLN--014111.8工号用户名密码卜|2GL^01im|吉平20150112015021华佗20150212015031董奉2015031米Atii他f病人信息表Vfin 014L11EX31_”数皓库-d亦扃人信宣 T X4^上哈医生i幼科室號誣话酹►pllFT H3S1527515421320150012015002知:再16眯机.l.fj15223154211Z) 1500220150D3甘七1女2B用哉fan151739335502015Q0330130D4孙尚香立24F"15171935550301500^30150D527孙般神经內科1387492116 723150052015005戦;.出32讣1411767232911aOLSatlEi*AU2戦1AC4;AMX检验项目表WIN-G141118L&1...^^ - dbd检验顶目检验I页目名称样本分顷目名称单位誉考值►血白细胞计数10E9/L3.9 7-7.15血液检验血红细胞计数10E12^4.00-5.50血液检瞪血护巴细胞百分比%20,0—0,0尿检尿PH值5l5-7.5尿检尿尿比重1,05-1,20米MLALSZNIAL检验结果表WIN-0141118181.. - Hbo.橙验结果 WIN-0141113181..-日 bo,检验项目样本号分项目至1称结果检验者送检日期抿告日期卜12015001白细胞计數6.34吉平2015-01-032015-01-042015001红细胞计數3.24吉平2015-01-082015-01-09来/Of/Of•物理结构设计根据数据表设计应用程序:登录界面(Login):代码: Option Explicit Dim cnt As IntegerPrivate Sub Command1_Click()Dim sqlStr As StringIf Trim(txtuser.Text) = "" ThenMsgBox "请输入用户名", vbOKOnly + vbExclamation, "" txtuser.SetFocusElsesqlStr = "select * from 用户信息表 where 用户名='" _& Trim(txtuser) & "'"Adodc1.RecordSource = sqlStrAdodc1.RefreshIf Adodc1.Recordset.EOF ThenMsgBox "没有这个用户", vbOKOnly + vbExclamation, "" txtuser.SetFocusElseIf Trim(Adodcl.Recordset.Fields('用户类型"))<> Trim(Combol.Text) ThenMsgBox "没有符合条件的用户", vbOKOnly + vbExclamation, ""ElseIf Trim(Adodc1.Recordset.Fields('密码"))=Trim(txtpwd) Then userID = txtuserIf Combo1.Text = "管理员" Thenusertype = 1ElseIf Combo1.Text = "检验医生" Thenusertype = 2Elseusertype = 3End IfEnd IfUnload MeMDIfrmMain.ShowElseMsgBox " 密码不正确", vbOKOnly + vbExclamation, "" txtpwd.SetFocusEnd IfEnd IfEnd IfEnd Ifcnt = cnt + 1If cnt = 3 ThenUnload MeExit SubEnd IfEnd SubPrivate Sub Command2_Click()Unload MeExit SubEnd SubPrivate Sub Form_Load()Combol.ListIndex = 0If userID = "" Then cnt = 0txtuser.Text = "201501" txtpwd.Text = "201501" End IfEnd Sub主界面:代码:Private Sub menuEx_edit_Click()frmExEdit .Show 1End SubPrivate Sub menuEx_find_Click() frmExFind.Show 1End SubPrivate Sub menuEx_record_Click() frmEInfoRecord.Show 1End SubPrivate Sub menuFI_keshi_Click() frmFIkeshiFind.Show 1End SubPrivate Sub menuFI_patient_Click() frmFIpatientFind.Show 1End SubPrivate Sub menuFI_yangben_Click() frmFIyangbenFind.Show 1End SubPrivate Sub menuPM_edit_Click() frmPMEdit.Show 1End SubPrivate Sub menuPM_find_Click() frmPMFind.Show 1End SubPrivate Sub menuPM_record_Click() frmPInfoRecord.Show 1End SubPriv。
