医院信息管理系统数据库系统的设计与实现.docx

上传人:b****3 文档编号:3385167 上传时间:2022-11-22 格式:DOCX 页数:17 大小:339.70KB
下载 相关 举报
医院信息管理系统数据库系统的设计与实现.docx_第1页
第1页 / 共17页
医院信息管理系统数据库系统的设计与实现.docx_第2页
第2页 / 共17页
医院信息管理系统数据库系统的设计与实现.docx_第3页
第3页 / 共17页
医院信息管理系统数据库系统的设计与实现.docx_第4页
第4页 / 共17页
医院信息管理系统数据库系统的设计与实现.docx_第5页
第5页 / 共17页
点击查看更多>>
下载资源
资源描述

医院信息管理系统数据库系统的设计与实现.docx

《医院信息管理系统数据库系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《医院信息管理系统数据库系统的设计与实现.docx(17页珍藏版)》请在冰豆网上搜索。

医院信息管理系统数据库系统的设计与实现.docx

医院信息管理系统数据库系统的设计与实现

 

题目:

医院信息管理系统数据库系统的设计与实现

1系统概况

1.1系统设计的目的

人类进入21世纪,医院作为一个极其重要的服务部门,其发展应适应计算机技术的发展。

我国的医疗体制正在进行改革,需要医疗市场的进一步规范化,这就利用现代化的工具对医院进行有效的管理,有利于提高医疗水平和服务质量,更好的服务于社会。

鉴于此目的,我利用SQLServer2000技术设计了此医院管理数据库系统,以利用计算机完成病人入院后,对其基本信息、主治医师以及入住病房等信息进行数据库管理,有利于提高入院手续的办理速度以及对医院资源管理的效率。

同时可以落实责任,方便信息的集中化管理及应用

1.2系统开发的背景与意义

医院作为一个极其重要的服务部门,其发展应适应计算机技术的发展。

利用SQLServer2000技术设计了此医院管理数据库系统,以利用计算机完成病人入院后,对其基本信息、主治医师以及入住病房等信息进行数据库管理,有利于提高入院手续的办理速度以及对医院资源管理的效率。

同时可以落实责任,方便信息的集中化管理及应用。

1.3系统实现的目标

本系统主要实现以下功能:

1)实现药品类型及药品信息的管理;

2)实现药品的入库、出库管理;

3)实现科室、医生、病人的管理;

4)实现处方的登记管理;

5)实现收费管理;

6)当药品入库、出库时自动修改库存;

7)统计某段时间内,各科室的就诊人数和输入情况;

8)查询各种药品的库存总数;

2系统需求分析

2.1系统总体需求

(1)信息要求:

医院信息管理系统涉及医生信息、病人信息、药品信息、收费表信息、科室管理等多种数据信息。

(2)功能要求:

医院信息管理系统用户管理只有管理员,负责日常医院管理工作,比如药品的入库信息录入,修改医生信息,删除,添加等操作。

 

2.2系统整体功能介绍

根据题目的要求可以将医院信息管理系统分为以下功能:

功能模块图2-1

2.3系统元素、实体介绍

数据流图

2.3.1医生信息流程图

2.3.2病人信息流程图

2.3.3科室信息流程图

2.3.4药品信息流程图

2.3.5药品库存流程图

2.3.6处方表流程图

2.3.7收费员信息流程图

 

2.3.8配药单流程图

数据字典

医生信息表共有6段:

医生编号、科室编号、姓名、性别、年龄、电话

如下表:

字段名

数据类型

是否可以为空

主键

医生编号

int

不可为空

科室编号

int

不可为空

姓名

varchar(50)

性别

char

(2)

年龄

int

电话

char(11)

性别只能是‘男’或‘女’

电话只能是11位数字,且第一个数字为1

病人信息表共有10字段:

病人编号、病人姓名、病人性别、病人年龄、病人电话、医生编号、科室编号、住院号、医治时间、纳费时间。

如下表:

字段名

数据类型

是否可以为空

主键

病人编号

char(10)

不可为空

病人姓名

varchar(50)

病人性别

char

(2)

病人年龄

int

病人电话

char(11)

医生编号

int

不可为空

科室编号

int

住院号

nchar(10)

医治时间

datetime

纳费时间

datetime

处方表共6字段:

处方编号、医生编号、病人编号、药品数量、药品编号、处方时间。

如下表:

字段名

数据类型

是否可以为空

主键

处方编号

nchar(10)

不可为空

医生编号

int

不可为空

病人编号

nchar(10)

不可为空

药品数量

varchar(50)

药品编号

nchar(10)

处方时间

datetime

收费员信息表共有2字段:

收费员编号、收费员姓名。

如下表:

字段名

数据类型

是否可以为空

主键

收费员编号

nchar(10)

不可为空

收费员姓名

varchar(50)

科室信息表共有3字段:

科室编号、科室名称、科室位置。

如下表:

字段名

数据类型

是否可以为空

主键

科室编号

int

不可为空

科室名称

varchar(50)

科室位置

varchar(50)

药品信息表共有6字段:

药品编号、药品名称、生产地点、生产日期、治疗功效、库存数量。

如下表:

字段名

数据类型

是否可以为空

主键

药品编号

nchar(10)

不可为空

药品名称

varchar(50)

生产地点

varchar(50)

生产日期

datetime

治疗功效

varchar(50)

库存数量

nchar(10)

药品库存表共有5字段:

药品编号、药品名称、库存数量、入库单价、出库单价。

如下表:

字段名

数据类型

是否可以为空

主键

药品编号

nchar(10)

不可为空

药品名称

varchar(50)

库存数量

int

入库单价

money

出库单价

money

配药单表共7字段:

配药单号、收费员编号、病人编号、药品编号、收费金额、收费时间、处方编号。

如下表:

字段名

数据类型

是否可以为空

主键

配药单号

nchar(10)

不可为空

收费员编号

nchar(10)

不可为空

病人编号

nchar(10)

不可为空

药品编号

nchar(10)

收费金额

money

收费时间

datetime

处方编号

nchar(10)

2.4软硬件平台介绍

SQLServer2008

3概念结构设计

3.1概念设计

给出系统各实体之间关系的E-R图,并作相应的介绍,并给出系统整体结构功能。

3.1.1医生局部ER图

 

图3-1

3.1.2病人信息局部ER图

图3-2

3.1.3科室信息ER图

图3-3

3.1.4处方表管理局部ER图

图3-4

3.1.5收费员信息局部ER图

图3-5

3.1.6药品库存管理局部ER图

图3-6

3.1.7药品信息管理局部ER图

图3-7

3.1.8配药单管理局部ER图

图3-8

3.2系统总体功能

给出总体系统设计的介绍,并给出相应的E-R图。

 

图3-9

4逻辑设计

4.1逻辑设计的任务和目标

以上的概念设计阶段是独立于任何一种数据模型的,但是逻辑设计阶段就与选用的DBMS产品发生关系了,系统逻辑设计的任务就是将概念设计阶段设计好的基本E-R图转换为选用DBMS产品所支持的数据模型相符合的逻辑结构。

具体内容包括数据组织(将E-R图转换成关系模型、模型优化、数据库模式定义、用户子模式设计)、数据处理(画出系统功能模块图)两大任务。

4.2将E-R图转换为关系模型

在这个阶段里,该系统的目标就是把基本的E-R图转换成关系数据模型。

通过转换,得到的所需的数据表如下,

1.医生信息表(医生编号、科室编号、姓名、性别、年龄、电话)

2.病人信息表(病人编号、病人姓名、病人性别、病人年龄、病人电话、主治医生编号、科室编号、住院号、医治时间、纳费时间)

3.科室信息表(科室编号、科室名称、科室位置)

4.药品信息表(药品编号、药品名称、生产地点、生产日期、有效期、治疗功效、库存数量)

5.药品库存表(药品编号、药品名称、库存数量、入库单价、出库单价)

6.处方表(处方编号、医生编号、病人编号、药品数量、药品编号、处方时间)

7.收费员信息(收费员编号、收费员姓名)

8.配药单表(配药单号、收费员编号、病人编号、药品编号、收费金额、收费时间)

4.3数据关系图

如图4-1所示,在数据库中生成的关系图中

5物理结构设计

5.1数据库的物理结构

数据库创建:

图5-1

表的创建:

医生信息表

图5-2

收费员信息表

 

图5-3

病人信息表

图5-4

科室信息表

图5-5

处方表

图5-6

药品库存表

图5-7

药品信息表

图5-8

配药单表

图5-9

 

5.1创建触发器,当药品入库、出库时自动修改库存

createtriggerexport_medicineon药品种类表forinsert

as

begin

declare@tint,@numint,@num1int

set@t=(selectinserted.药品编号frominserted)

select@num=处方表.配药数量

from处方表

select@num1=药品库存表.库存数量

from药品库存表

if(@num1>=@num)

begin

select@num1=@num1-@num

from处方表,药品库存表

where处方表.药品编号=药品库存表.药品编号and处方表.药品编号=@t

end

else

begin

print'配药数量已超过库存数量!

'

rollbacktransaction

end

update药品库存

set库存数量=@num1

where药品编号=@t;

end

5.2创建存储过程统计某段时间内,各科室的就诊人数和输入情况

ALTERprocedure[dbo].[各科室病人人数统计]

@time1datetime,@time2datetime

as

begin

select科室信息表.科室编号,科室信息表.科室名称,count(病人信息表.病人编号)as病人人数,@time1开始时间,@time2结束时间

fromdbo.科室信息表,dbo.病人信息表

where科室信息表.科室编号=病人信息表.科室编号and医治时间>=@time1and医治时间<=@time2

groupby科室信息表.科室编号,科室信息表.科室名称

end

5.3创建视图查询各种药品的库存总数

createview药品库存总数

as

select库存数量

from药品库存表

5.4建立完整性约束

altertable病人信息表

add

constraintcheck_病人性别check(病人性别in('男','女')),

constraintcheck_病人电话check(病人电话like('1[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'))

go

altertable医生信息表

add

constraintcheck_性别check(性别in('男','女')),

constraintcheck_电话check(电话like('1[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'))

6系统总结

本文详细论述了医院信息管理系统的设计与实现过程,基本实现了需求分析中的功能要求,进入系统之后,可以进行药品的入库信息录入,修改医生信息,删除,添加等操作,对于医院信息的管理起到了一定的帮助作用。

由于时间仓促以及开发者的水平有限,本系统还存在着一些缺点以及不足之处,系统的约束力和容错能力比较弱,而且可性行也不够强。

因此在系统的进一步开发实现以及扩展阶段,应该加强数据的完整性,多从安全性方面考虑设计,增强系统的扩展能力、容错能力以及系统的可行性。

因为这次课程设计时间有限,所以完成的功能也就很有限,但感觉收获很大,很有成就感。

7心得与体会

通过此次课程设计,使我更加扎实的掌握了有关数据库方面的知识,在设计过程中虽然遇到了一些问题,但经过一次又一次的思考,一遍又一遍的检查终于找出了原因所在,也暴露出了前期我在这方面的知识欠缺和经验不足。

实践出真知,通过亲自动手制作,使我们掌握的知识不再是纸上谈兵。

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1