医院管理系统sql数据库资料Word下载.docx

上传人:b****5 文档编号:19075819 上传时间:2023-01-03 格式:DOCX 页数:28 大小:1.97MB
下载 相关 举报
医院管理系统sql数据库资料Word下载.docx_第1页
第1页 / 共28页
医院管理系统sql数据库资料Word下载.docx_第2页
第2页 / 共28页
医院管理系统sql数据库资料Word下载.docx_第3页
第3页 / 共28页
医院管理系统sql数据库资料Word下载.docx_第4页
第4页 / 共28页
医院管理系统sql数据库资料Word下载.docx_第5页
第5页 / 共28页
点击查看更多>>
下载资源
资源描述

医院管理系统sql数据库资料Word下载.docx

《医院管理系统sql数据库资料Word下载.docx》由会员分享,可在线阅读,更多相关《医院管理系统sql数据库资料Word下载.docx(28页珍藏版)》请在冰豆网上搜索。

医院管理系统sql数据库资料Word下载.docx

随着现代化社会的发展,为了抓住机遇,在竞争中占得先机,作为管理企业的一个必不可少的重要环节—在线管理的信息化、计算机化也就迫在眉捷了。

开发在线管理信息系统即有宏观上的意义,那就是顺应时代信息化、现代化潮流,提高效益,促进国民经济管理的结构优化;

也有微观上的意义,那就是可以提高管理的现代化程序,加强管理的信息化手段,提高工作效率,增加单位效益。

电子计算机和通信技术的快速发展使人类已经逐渐地进入信息化社会。

信息和材料、能源一样成为一种社会的基本生产资料,在人类的社会生产活动中发挥着重要的作用。

一个规划周详、设计先进的计算机信息管理网络系统是取得竞争胜利的必备手段。

通过实现先进的计算机网络化管理,能为领导层的管理和决策及时提供可靠的数字依据,使管理更合理、更先进;

减少人力、物力资源的浪费,降低成本;

提高工作效率,提高管理效率;

提高经济效益,从而提高医院的整体竞争力。

建立以人事管理为中心的医院信息网络管理系统,以适应医院长期快速发展的需要,更重要的是能使患者在医院得到更加满意的治疗。

第二章数据库需求分析

2.1信息要求

由于系统的主体是医院的科室与人员,因此对系统的信息要求可分为以下几个方面:

医生信息,病人信息,护士信息,科室信息,病房信息。

a.科室信息

医院科室的基本信息,主要包括科室的科室名,地址,电话,主任。

b.医生信息

医院医生的基本信息,主要包括医生的姓名,工作证号,年龄,所属科室,学历。

c.病房信息

医院病房的基本信息,主要包括病房的病房号、床位数、所属科室、地址。

d.护士信息

医院护士的基本信息,主要包括护士的护士编号、姓名、性别、所属科室、年龄。

e.病人信息

记录病人的基本信息,主要包括病人的病历号、姓名、性别、年龄、诊断、医生姓名、病房号、血型、所属科室。

要求本系统能够拥有一个运行和维护的界面,并可实现数据的增删改查。

2.2功能模块图

医院信息管理系统功能模块由病人信息管理系统、医务人员管理系统、病房信息管理系统组成。

如下图2-1所示:

图2-1医院信息管理系统功能模块图

2.3数据流图

医院信息管理数据流图,如图2.2所示:

图2.2医院信息管理数据流图

2.4数据字典

数据字典是指对数据的数据项、数据结构、数据流、数据存储、处理逻辑、外部实体等五个部分进行定义和描述,其目的是对数据流程图中的各个元素做出详细的说明。

本次实验主要对数据字典的数据项进行分析。

如表2所示:

表2数据项

序号

数据项

数据类型

长度

备注

1

工作证号

char

8

医生的工作证号

2

医生的姓名

3

性别

医生的性别

4

年龄

20

医生的年龄

5

学历

医生的学历

6

所属科室

Char

医生的所属科室

7

病历号

病人的病历号

病人的姓名

9

病人的性别

10

病人的年龄

11

病房号

病人的病房号

12

医生姓名

病人主治医生的姓名

13

诊断

varchar

病人的诊断

14

血型

病人的血型

15

病人治疗的所属科室

16

科室主任

科室的科室主任

17

电话

科室的电话

18

科室地址

科室的地址

19

病房的病房号

床位数

病房的床位数

21

病房的所属科室

22

地址

病房的地址

23

护士编号

护士的编号

24

护士的姓名

25

护士的性别

26

护士的年龄

27

护士照顾的病房号

28

用户名

登录的用户名

密码

登录的密码

第三章数据库概念结构设计

3.1医院信息系统实体属性

医院医生的实体属性,主要包括医生的姓名,工作证号,年龄,所属科室,学历。

如图3.1医生实体属性图所示:

图3.1医生实体属性

院科室的实体属性,主要包括科室的科室名,地址,电话,主任;

如图3.2所示:

图3.2科室实体属性

医院病房的实体属性,主要包括病房的病房号、床位数、所属科室、地址;

如图3.3所示:

图3.3病房实体属性

医院护士的实体属性,主要包括护士的护士编号、姓名、性别、所属科室、年龄;

如图3.4所示:

图3.4护士实体属性

病人的实体属性,主要包括病人的病历号、姓名、性别、年龄、诊断、医生姓名、病房号、血型、所属科室。

如图3.5所示:

图3.5病人实体属性

3.2总E-R流程图

医院管理信息系统总E-R如图2.6所示:

图2.6总E-R图

第四章数据库逻辑结构设计

4.1关系模式

用户(用户名、密码)

医生(姓名、工作证号、性别、年龄、所属科室、学历)

护士(护士编号、护士姓名、性别、所属科室、年龄)

病人(病历号、姓名、性别、年龄、诊断、医生姓名、病房号、血型、所属科室)

科室(科室名、科室地址、科室电话、科室主任)

病房(病房号、床位数、所属科室、地址)

4.2数据模型优化

第一步:

对于1:

N联系“工作”,可以在“科室”模式中加入姓名属性。

N联系“属于”,可以在“科室”模式中加入病历号属性。

N联系“拥有”,可以在“科室”模式中加入病房号属性。

这样第一步得到的模式的形式如下:

科室(科室名、科室地址、科室电话、科室主任、姓名、病历号、病房号)

第二步:

对于M:

N联系“分配”则生成一个新的关系模式:

分配(病房号、护士编号)

这样转换成的六个模式如下:

分析,关系模式的每个关系都是不可再分的原子值,即为第一范式,又因为每个非主属性都不传递依赖于模式的候选键,因此该模式集为第三范式。

通过关系模式和不断优化修改,得出如表4.1所示的医生表:

表4.1医生表

字段名称

是否允许空

char(8)

char(8)

主键

char

(2)

char(20)

Char20)

外键

通过关系模式和不断优化修改,得出如表4.2所示的病人表:

表4.2病人表

varchar(20)

varchar(4)

通过关系模式和不断优化修改,得出如表4.3所示的科室表:

表4.3科室表

科室名

char(6)

通过关系模式和不断优化修改,得出如表4.4所示的病房表:

表4.4病房表

通过关系模式和不断优化修改,得出如表4.5所示的护士表:

表4.5护士表

通过关系模式和不断优化修改,得出如表4.6所示的分配表:

表4.6分配表

通过关系模式和不断优化修改,得出如表4.7所示的用户表:

表4.5用户表

char(10)

char(10)

第五章 数据库实施阶段

完成分析与结构优化以后,开始数据库的实施阶段,本章主要以数据库的创建,数据表的增、删、改、查,视图的创建以及存储过程的创建为内容。

5.1数据库创建

createdatabase医院管理系统--创建数据库

go

use医院管理系统

createtable用户表--创建用户表

用户名char(20)primarykey,

密码char(20)

createtable科室表--创建科室表

科室名char(20)primarykey,

电话char(20),

科室地址varchar(20),

科室主任char(6)

createtable医生表--创建医生表

工作证号char(8)notnull,

医生姓名char(8)primarykey,

性别char

(2),

年龄char(20),

所属科室char(20)references科室表,

学历char(20),

createtable病房表--创建病房表

病房号char(8)primarykey,

床位数char(8),

地址char(20)

createtable病人表--创建病人表

病历号char(8)primarykey,

姓名varchar(8)notnull,

年龄char(8),

血型varchar(4),

诊断varchar(20),

医生姓名char(8),

病房号char(8),

所属科室char(20)references科室表

createtable护士表--创建护士表

护士编号char(8)primarykey,

姓名char(8),

病房号char(8)references病房表,

--用户表插入数据

insertinto用户表values('

GongSheng'

123456);

LeiXiaoRong'

LiuHongBing'

--科室表插入数据

insertinto科室表values('

内科'

11111,'

六楼'

'

刘'

);

外科'

22222,'

二楼'

龚'

儿科'

33333,'

三楼'

陈'

妇科'

44444,'

四楼'

雷'

骨科'

55555,'

五楼'

匡'

急诊'

66666,'

一楼'

李'

--医生表插入数据

insertinto医生表values(01,'

赵宝'

男'

30,'

博士'

insertinto医生表values(02,'

前进'

研究生'

insertinto医生表values(03,'

赵雅'

女'

26,'

本科'

insertinto医生表values(04,'

白懿'

insertinto医生表values(05,'

刘欣'

42,'

insertinto医生表values(06,'

孙洲'

36,'

insertinto医生表values(07,'

李白'

28,'

insertinto医生表values(08,'

杜甫'

大专'

--病房表插入数据

insertinto病房表values(101,20,'

住院部一楼'

insertinto病房表values(102,20,'

insertinto病房表values(201,20,'

住院部二楼'

insertinto病房表values(202,20,'

insertinto病房表values(301,20,'

住院部三楼'

insertinto病房表values(302,20,'

--护士表插入数据

insertinto护士表values(21,'

王芳'

22,301);

insertinto护士表values(22,'

刘琼'

23,101);

insertinto护士表values(25,'

24,202);

insertinto护士表values(23,'

白清'

25,102);

insertinto护士表values(24,'

吴赵'

26,201);

insertinto护士表values(26,'

吴雅'

27,201);

insertinto护士表values(27,'

莉莉'

28,201);

insertinto护士表values(28,'

夏天'

29,302);

--病人表插入数据

insertinto病人表values(1501,'

周一'

64'

AB'

腰椎盘突出'

301,'

insertinto病人表values(1502,'

胡二'

22'

骨折'

null,'

insertinto病人表values(1503,'

郑三'

33'

B'

不孕不育'

202,'

insertinto病人表values(1504,'

王四'

46'

A'

烧伤'

102,'

insertinto病人表values(1505,'

李五'

5'

O'

腹泻'

201,'

insertinto病人表values(1506,'

何六'

56'

急性阑尾炎'

302,'

insertinto病人表values(1507,'

孙九'

66'

102,null);

5.2数据表查询

以下命令用于对数据库内各个表的查询。

select*from医生表--医生表数据查询

select*from病房表--病房表数据查询

select*from病人表--病人表数据查询

select*from科室表--科室表数据查询

select*from护士表--护士表数据查询

5.3数据表删除

以下命令用于删除数据库的表。

droptable医生表--医生表数据删除

droptable病房表--病房表数据删除

droptable病人表--病人表数据删除

droptable科室表--科室表数据删除

droptable护士表--护士表数据删除

5.4视图创建

为了方便数据查询以及提高查询的安全性,我们需要建立视图,以下是创建视图和视图查询的命令。

--创建视图a查看病人表

createviewa

as

select*

from病人表

--查询视图a

select*froma

--创建视图b查看那位病人没有病房

createviewb

select病人表.姓名

where病房号isnull

--查询视图b

select*fromb

--创建视图c查看每位病人相对照的护士姓名

createviewc

select病人表.姓名as病人姓名,护士表.姓名as护士姓名

from病人表,护士表

where病人表.病房号=护士表.病房号

--查询视图c

select*fromc

--创建视图查看医生医治的病人信息

createviewd

select医生表.医生姓名,病人表.姓名as病人姓名

from医生表,病人表

where医生表.医生姓名=病人表.医生姓名

--查询视图d

select*fromd

5.5存储过程创建

创建存储过程更好的实现数据的修改与删除。

5.5.1存储过程的查询功能

--创建存储过程查询病人的病房信息

ifexists(select*fromsysobjectswherename='

病人病房查询'

andtype='

p'

dropprocstud_degree

go

createproc病人病房查询

select病人表.姓名,病房表.所属科室as'

病房科室'

病房表.地址as'

病房地址'

from病人表,病房表

where病人表.病房号=病房表.病房号

exec病人病房查询

select*fromsysobjects

--创建存储过程lll,该存储过程根据传入的病历号,它返回三个参数@病人姓名、@科室名和@病房号。

lll'

dropproclll

createproclll@病历号char(10),@科室名char(20)output,@病房号char(8)output,@病人姓名varchar(8)output

as

set@病人姓名=(select姓名as'

病人姓名'

from病人表

where病历号=@病历号

set@科室名=(select病人表.所属科室as'

所在科室'

where病人表.病历号=@病历号)

set@病房号=(select病房号as'

病人所在病房'

from

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

当前位置:首页 > 求职职场 > 简历

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

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