小型医院住院管理系统.docx
- 文档编号:8399675
- 上传时间:2023-01-31
- 格式:DOCX
- 页数:22
- 大小:342.48KB
小型医院住院管理系统.docx
《小型医院住院管理系统.docx》由会员分享,可在线阅读,更多相关《小型医院住院管理系统.docx(22页珍藏版)》请在冰豆网上搜索。
小型医院住院管理系统
成绩
课程设计报告
题目小型医院住院管理系统
课程名称数据库应用程序设计课程设计
院部名称信息技术学院
专业软件工程
班级M12软件工程
学生姓名
学号
课程设计地点
课程设计学时
指导教师
金陵科技学院教务处制
【注:
根据课程设计大纲第四项具体要求撰写课程设计报告】
一、课程设计目的
数据库应用程序课程设计旨在使学生对数据库应用系统的开发过程有一个全面的认识和了解,在程序设计语言课程基本编程训练的基础上,对数据库应用系统的流程和特点有较深入的了解,能够自觉运用数据库原理的理论知识指导软件设计,学会数据库的设计,并能对设计结果的优劣进行正确评价,能够使用已学过的程序设计语言编制具有可读性和可维护性的良好风格的程序。
培养快速学习新知识,并在项目中使用的能力。
二、课程设计要求
1.采取分组并分工合作的方式进行课程设计,独立编制文档,态度认真、工作量饱满、完成设计所有要求;
2.利用某种程序设计语言(以学生学过的C++、ASP、C#或JAVA为佳),用SQLSERVER2005进行后台数据库管理,编写出某个小型的管理信息系统,该系统应具备对数据进行录入、查询、删除、修改、统计、报表,还包括各用户界面的屏幕设计等功能;
3.按照数据库设计的基本步骤完成数据库设计过程,要求数据库结构合理,符合实际,设计过程和文档的编写遵循软件工程规范。
要求注重数据库系统的安全管理,包括数据备份、权限设置等,系统要有两类登陆用户:
系统用户、一般用户;
4.软件运行正确,提交的软件及课程设计报告思路正确、撰写规范、结构合理;
5.按照数据库设计的六个步骤来撰写课程设计报告,即需求分析、概念结构设计、逻辑结构设计、物理结构设计、数据库实施、数据库运行维护,还要包括主要参考文献、课程设计的体会、用户的系统使用说明书、附录(系统的主控源程序代码)等。
三、课程设计过程描述
3.1简单分析
3.1.1背景描述
医院是救死扶伤之地,医院在现代社会的发展过程中起着举足轻重的作用,不论医院规模的大小,医院内部的部门设置以及人员的配置都是非常复杂的,此外,医院又是一个特殊的地方,要求每一位医护人员都要有极其认真负责的态度,稍有差错就会给病人带来生命危险,在科技日益发达的今天,人们的身体健康也不断受到重视,因此,医院进行现代化管理就变得尤为重要,医院的特殊性要求管理人员仔细地管理好医院内部的每一个环节,然而随着社会信息化的到来,医院拥有大量的医护人员,大量的后勤人员,大量的药品和仪器,最重要的是拥有大量的病人,医院的管理工作变得非常复杂,这就要求有一个功能强大的管理系统来协助管理人员处理好医院的每一个事物。
现代化的医院也应该有现代化的管理系统,随着计算机极其性能的不断提高,计算机已经在医院医疗,教学,科研,管理等方面得到越来越广泛的应用,同样,医院管理系统能够有效的管理也离不开计算机,一个良好的医院管理系统,不但可以方便管理人员实现医院的日常管理工作,更重要的是可以提高医院治病救人的效率
3.1.2系统可行性分析
本系统从以下三个方面进行分析:
1技术可行性
计算机具有强大的数据处理能力,通过计算机软件可以实现对日常医院业务的信息管理,从而更加准确、实时、可靠,同时计算机可以快速的进行数据统计分析,对于医院管理工作的改进和效率提高有很大的帮助。
因此开发本系统是可行的
2经济可行性
电脑作为现代社会必不可少的信息工具,已经普及很多行业,医院可以根据自身实际情况配置其需要的计算机的性能,而且这些电脑的费用也不是很昂贵,对整个住院系统来说并不是一个很重要的负担。
因此开发本系统是可行的。
3操作可行性
通过计算机管理住院系统不仅可以在一定程度上减轻医务人员的劳动强度,提高工作效率和工作质量,而且可以更及时、准确、有效地分析统计各种临床数据及管理数据,供上级主管部门作出科学的管理决策,促进医院管理水平的进一步提高。
综上所述:
经分析本系统满足以上几个方面的要求,所以开发本系统是完全可行的。
3.1.3系统的设计目标
系统开发的总体目标是实现医院住院管理的系统化、规范化、自动化,减轻事务处理人员的劳动强度,提高医院的工作效率,从而使医院能够以较少的投入获得更好的社会效益与经济效益。
3.1.4系统设计概要
本系统主要有六大模块:
系统设置、病人入院管理、医生信息管理、药品信息管理、科室信息管理、病人出院管理。
详细功能如下:
1、系统设置:
密码修改、用户权限设置、系统备份、退出;
2、住院病人及预交费基本录入、查询、修改管理;
3、医生信息录入、查询和修改;
4、药品信息的录入、查询和修改;
5、科室信息及床位的添加、查询、修改;
6、出院结账的汇总及处理等。
分工:
1.2阙煜城3.4刘健
5邹超6李玉康
(1)系统功能模块图
系统功能模块图
(2)具体系统的业务过程及功能要求
通过对医院住院管理的实际调查分析,得到以下业务流程图:
医院住院系统处理流程图
3.2数据库分析
计算机的发展速度是惊人的,其运用的领域已经涉及各个方面。
对于医院来说,利用计算机支持企业高效率完成医院管理的日常事务,如医生信息的管理、病人的添加、药品的管理等。
是适应现代医院住院管理制度要求、推动医院由劳动型管理转向科学化、规范化的必要条件;而医院管理是一项繁琐、复杂而又十分细致的工作,医院人员对病人的入院、出院、服药等的记录,这些记录是不允许出错,如果出错则会严重损害病人的身体健康甚至造成生命危险。
如果实行手工操作,须手工填制大量的表格,这就会耗费工作人员大量的时间和精力,计算机进行医院的管理,不仅能够保证各项信息准确无误、快速输出,同时计算机具有手工管理所无法比拟的优点.例如:
检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、成本低等。
这些优点能够极大地提高医院管理的效率,也是医院管理走向科学化、正规化管理,与世界接轨的重要条件。
根据数据流程,可以列出以下管理系统所需的数据项和数据结构:
●医生信息:
医生号、姓名、性别、年龄、家庭住址、电话、职称
●药品信息:
编号、单价、出产地、药品名称、进价、生产日期、数量、类型
●用药记录:
病人号、药品编号
数据流描述
表1药品信息管理
数据流编号:
02
数据流名称:
药品信息管理
简述:
输入住院号,显示病人药方
数据流来源:
系统管理员
数据流去向:
病人药方单
数据项组成:
编号+单价+出产地+药品名称+进价+生产日期+数量+类型
3.3数据库逻辑设计过程描述
本系统的E-R图如图下所示:
本系统E-R图
以下是3.4模块分E-R图:
图1医生
图2病历
图3药方
3.3.1把系统的E-R图转换成数据库关系模式如下:
医生(工作号,性别,专攻方向,科室,姓名,职称,联系电话)
病历(病历编号,工作号,姓名,年龄,性别,身份证,联系电话,药物禁忌,病情处理,时间,备注)
药品(药品编号,单价,出产地,药品名称,进价,生产日期,数量,类型)
3.3.2数据库中的关系表:
病历表
已达到BCNF范式
药品表
已达到3nf范式
图3.2.1主码外码关系
3.4数据库物理设计过程描述
数据库在物理设备上的存储结构与存取方法称为数据库的物理结构,它依赖于选定的数据库管理系统。
为一个给定的逻辑数据模型选取一个最适合的应用要求的物理结构的过程,就是数据库的物理设计。
数据库的物理设计的内容包括:
为关系模型选择存取方法;设计关系、索引等数据库文件的物理存储结构。
3.4.1关系模式存取方法的选择
确定数据库的存取方法,就是确定建立哪些存储路径以实现快速存取数据库中的数据。
现行的DBMS一般都提供了多种存取方法,如索引法、HASH法等。
其中,最常用的是索引法,本系统也采用的是索引法。
我们在经常需要搜索的列和主关键字上建立了唯一索引。
3.4.2确定数据库的存储结构
由于不同PC机所安装的数据库软件位置不一定相同,所以数据文件与日志文件的存放位置也不一定相同。
我们存放数据文件与日志文件的位置在:
f:
\lj。
3.4.3把关系模型转化为表结构
(1)医生信息表(doctor):
包含所有医生的个人信息。
表2-医生信息表结构
域名
含义
数据类型
例子
备注
dno
医生号
字符类型
101
主码
dname
医生姓名
字符类型
韩翠翠
dage
医生年龄
数值类型
56
dgzsx
医生性别
字符类型
女
ddept
医生科室
字符类型
妇科
(2)病人看病表(Seek):
包含所有病人的看病信息。
表4-病人看病表结构
域名
含义
数据类型
例子
备注
Pno
病人号
字符类型
01001
外码
SeekTime
看病时间
数值类型
3
(3)病人住院表(Hospitalized):
包含所有病人住院信息。
表5-病人住院表结构
域名
含义
数据类型
例子
备注
Pno
病人号
字符类型
01001
外码
HospitalizedTime
住院时间
数值类型
2
3.4.4实现数据完整性
可以通过各种约束,缺省值,规则和触发器实现数据的完整性。
由于教务系统的重要性,以及各个数据之间的复杂相关性,保证数据的完整性显得更为重要。
不能让用户随意进行删除、修改数据。
(1)CHECK约束保证在每位医生都有病人情况下,才可出现医生所看病人的人数有所偏差。
(2)各种外码约束保证数据的完整性,不能随意删除。
外码的设置在上面数据库建表时已经提到。
(3)主码约束保证实体的完整性,主码的设置在上面数据表的设计时已提到了。
(4)创建规则保证医生的年龄在20岁到65岁之间(出生日期在1974-1-1到19-12-31日之间),不会输入错误数据。
(5)创建触发器,保证在添加医生信息的时候,自动将该医生的信息添加到doctor表中。
医生基本信息表
属性名
数据类型
是否可空
备注
医师号PK
CHAR(10)
NOTNULL
医生编号
姓名
CHAR(10)
NOTNULL
医生姓名
性别
CHAR
(2)
NULL
性别
年龄
INTEGER
NOTNULL
医生的年龄
家庭住址
CHAR(40)
NOTNULL
医生的住址
电话
CHAR(20)
NULL
医生的联系方式
职称
CHAR(10)
NOTNULL
医生的职位
病人基本信息表
属性名
数据类型
是否可空
备注
病人号PK
CHAR(20)
NOTNULL
病人编号
姓名
CHAR(10)
NOTNULL
病人姓名
性别
CHAR
(2)
NULL
性别
年龄
INTEGER
NOTNULL
病人的年龄
住址
CHAR(40)
NULL
病人居住地址
电话
CHAR(20)
NOTNULL
病人家属联系方式
入院时间
DATETIME
NOTNULL
病人入院日期
出院时间
DATETIME
NOTNULL
病人出院日期
药品基本信息表
属性名
数据类型
是否可空
备注
药品编号PK
CHAR(20)
NOTNULL
药品的编号
药品名称
CHAR(20)
NOTNULL
药品名称
生产日期
DATETIME
NOTNULL
药品生产日期
保质期
INTEGER
NOTNULL
药品的保质期
病人用药信息表
属性名
数据类型
是否可空
备注
病人号PK
CHAR(20)
NOTNULL
病人编号
药品编号PK
CHAR(20)
NOTNULL
药品的编号
医生诊断信息表
属性名
数据类型
是否可空
备注
病人号PK
CHAR(20)
NOTNULL
病人编号
医师号PK
CHAR(10)
NOTNULL
医生编号
诊断结果
CHAR(20)
NOTNULL
诊断结果记录
3.5数据库实现
3.5.1CreateDatabase创建数据库
CREATEDATABASE[医院住院系统]ONPRIMARY
(NAME=N'医院住院系统',FILENAME=N'G:
\database\医院住院系统.mdf',SIZE=2048KB,MAXSIZE=UNLIMITED,FILEGROWTH=10%)
LOGON
(NAME=N'医院住院系统_log',FILENAME=N'G:
\database\医院住院系统_log.ldf',SIZE=4096KB,MAXSIZE=2048GB,FILEGROWTH=10%)
COLLATEChinese_PRC_CI_AS
GO
3.5.2CreateTable创建表
--创建病历信息表
CREATETABLE[dbo].[病历](
[病历编号][decimal](18,0)NOTNULL,
[工作号][nchar](10)COLLATEChinese_PRC_CI_ASNOTNULL,
[姓名][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[年龄][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[性别][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[身份证][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[联系电话][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[药物禁忌][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[病情处理][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[时间][datetime]NULL,
[备注][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
CONSTRAINT[PK_病历]PRIMARYKEYCLUSTERED
(
[病历编号]ASC
)WITH(IGNORE_DUP_KEY=OFF)ON[PRIMARY]
)ON[PRIMARY]
GO
床位
--创建床位信息表
CREATETABLE[dbo].[床位](
[床位号][varchar](50)COLLATEChinese_PRC_CI_ASNOTNULL,
[状态][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[单价][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[科室号][decimal](18,0)NULL,
CONSTRAINT[PK_床位]PRIMARYKEYCLUSTERED
(
[床位号]ASC
)WITH(IGNORE_DUP_KEY=OFF)ON[PRIMARY]
)ON[PRIMARY]
GO
--创建出院费用总计信息表
CREATETABLE[dbo].[出院费用总计](
[病人号][nchar](10)COLLATEChinese_PRC_CI_ASNOTNULL,
[科室][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[姓名][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[年龄][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[科室号][decimal](18,0)NOTNULL,
[预交款][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[药品编号][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[药品费用][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[药品数量][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[床位号][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[床位费用][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[检查费用][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[治疗费用][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[余额][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[应付费用][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[实交费用][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[结账统计][float]NULL,
[联系电话][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[收费人][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
CONSTRAINT[PK_出院费用总计]PRIMARYKEYCLUSTERED
(
[病人号]ASC
)WITH(IGNORE_DUP_KEY=OFF)ON[PRIMARY]
)ON[PRIMARY]
GO
--创建入院病人信息表
CREATETABLE[dbo].[入院病人](
[病人号][nchar](10)COLLATEChinese_PRC_CI_ASNOTNULL,
[床位号][varchar](50)COLLATEChinese_PRC_CI_ASNOTNULL,
[姓名][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[年龄][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[预交款][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[联系电话][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[病情描述][varchar](50)COLLATEChinese_PRC_CI_ASNULL,
[病历编号][decimal](18,0)NULL,
CONSTRAINT[PK_入院病人]PRIMARYKEYCLUSTERED
(
[病人号]ASC
)WITH(IGNORE_DUP_KEY=OFF)ON[PRIMARY]
)ON[PRIMARY]
GO
4.5功能模块sql设计的数据表
一,定义数据表
(1)医生数据表,用来存放所有医生的信息,包括医生的编号、姓名、性别、职称、电话号码、所属部门等数据,其中编号是主码,唯一确定医生。
医生数据表
SQL语句:
createtabledoctor
(doctor_nochar(10)primarykey,
dnamechar(15)notnull,
dsexchar
(2),
titlechar(20),
phonenumberchar(15)notnull,
departmentchar(20))
执行后:
(2)定义表之间的关系
二,插入数据
(1)插入医生数据
INSERTINTOdoctorVALUES('801','邹超','男','主治医师','50855808','皮肤科');
INSERTINTOdoctorVALUES('802','阙煜城','男','主治医师','50855808','皮肤科');
INSERTINTOdoctorVALUES('802','李玉康','男','主治医师','50855808','皮肤科');
(2)插入治疗记录数据
INSERTINTOTreatmentVALUES(2012/02/12,'001','801','骨质增生','住院打针');
INSERTINTOTreatmentVALUES(2011/12/10,'002','802','左手骨折','住院缝针');
三、查询信息
SELECT*FROMward
selectA.patient_no病人编号,pname病人姓名,dname医生姓名
frompatientA,doctorB,TreatmentC
whereA.patient_no=C.patient_noandB.doctor_no=C.doctor_no
药品信息的录入、查询和修改的实现
创建医药销售管理系统
create database MedicalManagerSystem/*创建医药销售管理系统*/ use MedicalManagerSystem 2.5.2创建药品类别索引信息表
create table MedID//创建药品类别索引信息表
(MedKindeCode char(10) constraint MI_PRI PRIMARY KEY, KindExplanation varchar(12) NOT NULL) 其余略
建立存储过程向表中插入、修改、删除数据
⑴ 插入数据的存储过程
create proc MedID_proc
@MedKindeCode char(10),@KindExplanation varchar(12) as insert
into
MedID
(MedKindeCode,KindExplanation)
values(@MedKindeCode ,@KindExplanation )
exec MedID_proc '0001','口腔溃疡'
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 小型 医院 住院 管理 系统