您好,欢迎来到小奈知识网。
搜索
您的当前位置:首页数据库课程设计——健康档案管理系统

数据库课程设计——健康档案管理系统

来源:小奈知识网
 数据库 课程设计报告

课 题: 健康档案管理系统

目 录

一、 课程设计的目的和意义…………………………………2

1.1、 课程设计的目的 …………………………………………2 1.2、 课程设计的意义 …………………………………………2

二、 需求分析…………………………………………………3

2.1、数据流图……………………………………………………4 2.2、数据字典……………………………………………………7

三、概要结构设计……………………………………………10 四、逻辑结构设计……………………………………………13 五、物理结构设计……………………………………………13 总结 …………………………………………………………15 参考文献 ……………………………………………………16

一、课程设计的目的和意义

1.1、课程设计的目的

数据库课程设计是数据库原理及应用实践环节极为重要的一部分,其目的主要是为了加强学生对数据库基本概念、原理和技术的掌握,结合实际的操作和设计,巩固课堂教学内容,将理论与实际相结合,强化学生的实践意识,从而提高学生的实际动手能力和创新能力。通过课程设计,可以培养学生分析问题、解决问题以及自学能力,提高和加强学生的计算机应用与软件开发能力,使学生熟练掌握数据库设计工具的使用,提高从事数据库系统建设和管理工作的基本技能和能力。

1.2、 课程设计的意义

课程设计是学完基础知识后必须进行的一个实践环节。进行课程设计: 有利于基础知识的理解,学生可以掌握一些信息时代生存与发展必需的信息技术基础知识和基本技能,具备了在日常生活与学习中应用信息技术解决问题的基本态度与基本能力;

有利于逻辑思维的锻炼 ,在许多常规学科的日常教学中,我们不难发现这样一个现象,不少学生的思维常常处于混乱的状态。写起文来前言不搭后语,解题步骤混乱,这些都是缺乏思维训练的结果。程序设计是公认的、最能直接有效地训练学生的创新思维,培养分析问题、解决问题能力的学科之一。即使一个简单的程序,从任务分析、确定算法、界面布局、编写代码到调试运行,整个过程学生都需要有条理地构思,这中间有猜测设想、判断推理的抽象思维训练,也有分析问题、解决问题、预测目标等能力的培养;

有利于与其他学科的整合 ,在程序设计中,我们可以解决其它学科有关问题,也利用其它课程的有关知识来解决信息技术中比较抽象很难理解的知识。在信息技术课中整合其它学科的知识,发挥信息技术的优势;

有利于治学态度的培养, 程序设计中,语句的语法和常量变量的定义都有严格的要求,有时输了一个中文标点、打错了一个字母,编译就不能通过,程序无法正常运行。程序设计初学阶段,学生经常会犯这样的错误,可能要通过几次乃至十多次的反复修改、调试,才能成功,但这种现象会随着学习的深入而慢慢

改观。这当中就能培养严谨治学、不怕失败、百折不挠的科学精神和态度。

二、 需求分析

任务:设计一个健康档案管理系统 1、功能要求:

该系统的健康文件包括病历文件和体检文件。 1.登记

将学生的健康信息插入健康文件; 2.修改

修改一个学生的健康档案记录; 3.删除

删除学生的健康档案记录; 4.查询

可以组合各种条件进行查询,显示学生健康信息并打印健康文件报表; 5.统计

对学生的基本健康状况进行各种必要的统计和分析,由一般统计和动态分析两种。一般统计包括计数和求平均值;动态分析由健康历史求出平均年增长值和年增长率。 2、数据要求:

体检文件:学号、姓名、性别、系别、年龄、身高、体重、胸围、日期 病历文件:学号、姓名、性别、系别、 诊断、日期

在这次的课程设计中,用户要求我们对该系统的健康文件实现学生信息登记、修改、删除、查询、统计等操作,其中健康文件还包含病历文件和体检文件。在病历文件中的数据要求有学号、姓名、性别、系别、 诊断、日期,而体检文件中的数据要求有学号、姓名、性别、系别、年龄、身高、体重、胸围、日期。而为了使这个健康档案管理系统的设计能够更加接近现实生活,并充分考虑到今后可能的扩充和改变,我们在里面加了一些相应的东西,比如我们将病历文件和体检文件都看成是很多学生的分类,每个学生都有一份相应的病历文件和体检文件,文件中是他们不同时期的病历表和体检表,而病历表的属性不止包括学号、姓名、性别、系别、 诊断、日期,还有医疗记录和是否住院等,体检表中又包含体检项目,而身高、体

重、胸围等均包含在项目名称中。

2.1、数据流图

2.2、数据字典(我负责加工条目)

1. 数据流条目

数据流名称:原始数据

简述:医务室向健康档案管理系统输入的学生的体检和病历数据 来源:医务室

去向:健康档案管理系统

组成:学号+姓名+性别+系别+年龄+身高+体重+胸围+日期+诊断结果+联 系方式+医疗记录+是否住院+其他

数据流名称:反馈信息

简述:健康档案管理系统向医务室反馈的学生的体检和病历信息 来源:健康档案管理系统 去向:医务室

组成:学号+姓名+性别+系别+年龄+身高+体重+胸围+日期+诊断结果+联 系方式+医疗记录+是否住院+其他 数据流名称:统计信息

简述:健康档案管理系统统计的学生的体检和病历信息 来源:健康档案管理系统 去向:学生

组成:统计学生的体检和病历信息的结果+分析学生的体检和病历信息的结果

数据流名称:查询信息

简述:健康档案管理系统查询的学生的体检和病历信息 来源:健康档案管理系统 去向:学生

组成:学生的体检信息+病历信息

数据流名称:报表

简述:打印出来的学生的健康信息 来源:健康档案管理系统 去向:学生

组成:健康状况表+成长情况表

数据流名称:新增数据

简述:新增的学生的体检和病历数据 来源:医务室

去向:健康档案管理系统 组成:体检记录+病历记录

数据流名称:插入信息

简述:插入学生的体检和病历信息 来源:健康档案管理系统 去向:医务室

组成:体检记录+病历记录

数据流名称:修改数据

简述:修改的学生的体检和病历数据

来源:医务室

去向:健康档案管理系统 组成:体检记录+病历记录

数据流名称:修改信息

简述:反馈修改后的学生的体检和病历数据

来源:健康档案管理系统 去向:医务室

组成:体检记录+病历记录

数据流名称:删除数据 简述:删除的学生的数据

来源:医务室

去向:健康档案管理系统

组成:学号+姓名+性别+系别+年龄+专业+班级+联系方式+家庭住址

数据流名称:删除信息 简述:反馈删除学生数据的结果

来源:健康档案管理系统 去向:医务室

组成:学号+姓名+性别+系别+年龄+专业+班级+联系方式+家庭住址+删除成

功或操作失败

数据流名称:健康状况表 简述:生成的学生健康表

来源:健康档案管理系统 去向:学生

组成:学号+姓名+性别+系别+年龄+身高+体重+胸围+日期+诊断结果+联

系方式+医疗记录+是否住院+健康状况+其他

数据流名称:成长情况表 简述:生成的学生成长表

来源:健康档案管理系统 去向:学生

组成:学号+姓名+性别+系别+年龄+身高+体重+胸围+日期+诊断结果+联

系方式+医疗记录+是否住院+成长状况+其他

数据流名称:统计结果 简述:统计学生数据的结果

来源:健康档案管理系统 去向:学生

组成:计数结果+平均身高+平均体重+平均胸围

数据流名称:分析结果 简述:分析学生数据的结果

来源:健康档案管理系统 去向:学生

组成:平均增长率+平均增长值

数据流名称:计数结果 简述:统计学生病历信息的结果

来源:健康档案管理系统 去向:学生

组成:学号+姓名+性别+年龄+系别+诊断结果+联系方式+医疗记录+是否住院

数据流名称:平均身高

简述:计算学生体检后的平均身高

来源:健康档案管理系统 去向:学生

组成:体检人数+总身高+平均身高

数据流名称:平均体重

简述:计算学生体检后的平均体重

来源:健康档案管理系统 去向:学生

组成:体检人数+总体重+平均体重

数据流名称:平均胸围

简述:计算学生体检后的平均胸围

来源:健康档案管理系统 去向:学生

组成:体检人数+总胸围+平均胸围

数据流名称:平均增长率

简述:计算学生体检后的平均增长率

来源:健康档案管理系统 去向:学生

组成:体检人数+总增长率+平均增长率

数据流名称:平均增长值

简述:计算学生体检后的平均增长率

来源:健康档案管理系统 去向:学生

组成:体检人数+总增长值+平均增长值

2.数据项条目

数据项名称:地址

简述:医务室的地址

类型: 字符串 长度: 50

数据项名称:电话

简述:医务室的电话号码

类型:字符串 长度: 20

数据项名称:编号

简述:唯一识别医生身份的证明 类型:整型 长度:10

数据项名称:医科类别

简述:医生主治的医科类 类型: 字符串 长度: 20

数据项名称:学号

简述:唯一识别学生身份的证明 类型: 字符串 长度: 20

数据项名称:姓名 简述:学生和医生的姓名 类型:字符串 长度:20

数据项名称:性别 简述:学生和医生的性别 类型:字符串 长度:10

数据项名称:系别 简述:学生的系别 类型: 字符串 长度: 20

数据项名称:年龄 简述:学生和医生的年龄 类型: 整数 长度: 10

数据项名称:专业 简述:学生的专业 类型:字符串 长度: 20

数据项名称:班级 简述学生的班级 类型:字符串 长度: 20

数据项名称:联系方式 简述:学生和医生的联系方式 类型:字符串 长度: 20

数据项名称:家庭住址 简述:学生的家庭住址 类型:字符串 长度: 50

数据项名称:日期

简述:学生的体检和病历日期 类型: 字符串 长度: 20

数据项名称:诊断结果 简述:医务室对学生的病情诊断 类型:字符串 长度: 500

数据项名称:医疗记录 简述:学生的用药记录 类型:字符串 长度: 500

数据项名称:是否住院

简述:针对学生的病情看是否需要住院 类型:字符串 长度: 10

数据项名称:项目编号 简述:唯一识别体检项目的证明 类型:整型 长度: 10

数据项名称:项目名称

简述:体检项目,如身高、体重等 类型:字符串 长度: 20

数据项名称:体检结果 简述:学生的体检情况 类型:字符串 长度: 20

3.数据结构描述 名称:医务室

含义说明:定义了医务室的有关信息 组成结构:地址+电话

名称:医生

含义说明:定义了医生的有关信息

组成结构:编号+姓名+性别+年龄+医科类别+联系方式

名称:学生

含义说明:定义了学生的有关信息

组成结构:学号+姓名+性别+系别+年龄+专业+班级+联系方式+家庭住址

名称:病历文件

含义说明:包含了学生的病历信息 组成结构:学号+姓名+病历表

名称:体检文件

含义说明:包含了学生的体检信息 组成结构:学号+姓名+体检表

名称:病历表

含义说明:定义了学生的病历信息

组成结构:学号+姓名+性别+系别+年龄+联系方式+诊断结果+医疗记录+是否

住院

名称:体检表

含义说明:定义了学生的体检信息

组成结构:学号+姓名+性别+系别+年龄+联系方式+体检项目+日期

名称:体检项目

含义说明:定义了学生的体检项目信息 组成结构:编号+项目名称+体检结果 4.数据存储条目

数据存储名称:体检信息 编号:D1

简述:学生体检后的体检信息

组成:学号+姓名+性别+系别+年龄+联系方式+体检项目+体检日期 组织方式:索引文件,以学号为关键字 查询要求:要求能立即查询

数据存储名称:病历信息 编号:D2

简述:学生体检后的病历信息

组成:学号+姓名+性别+系别+年龄+联系方式+诊断结果+医疗记录+是否住院 组织方式:索引文件,以学号为关键字 查询要求:要求能立即查询

3加工条目:

加工名:数据维护 编号:1

激发条件:接收到学生原始的体检和病历数据时 输入:合格的学生的体检和病历数据 输出:学生的体检和病历数据

处理:维护学生的的体检和病历数据

加工名:统计查询 编号:2

激发条件:接收到学生的体检和病历信息时 输入:合格的学生的体检和病历信息 输出:学生的体检和病历信息

处理:统计和查询学生的体检和病历信息

加工名:新增记录

编号:1 .1

激发条件:接收到学生的相关数据时 输入:合格的学生的相关数据

输出:学生的相关信息

处理:添加学生的相关信息

加工名:修改记录

编号:1 .2

激发条件:接收到学生需要修改的相关数据时 输入:合格的需要修改的学生的相关数据

输出:学生的相关信息

处理:修改学生的相关信息

加工名:删除记录

编号:1 .3

激发条件:接收到学生需要删除的相关数据时 输入:合格的需要删除的学生的相关数据

输出:学生的相关信息

处理:删除学生的相关信息

加工名:统计

编号:2 .1

激发条件:接收到学生的病历和体检信息时 输入:合格的学生病历和体检信息

输出:统计的学生病历和体检信息 处理:统计学生的相关信息

加工名:查询

编号:2 .2

激发条件:接收到学生的病历和体检信息时 输入:合格的学生病历和体检信息

输出:查询的学生病历和体检信息

处理:查询学生的相关信息

加工名:生成健康表

编号:3 .1

激发条件:接收到学生的病历和体检信息时 输入:合格的学生病历和体检信息

输出:学生的健康状况表 处理:生成学生健康表

加工名:生成成长表

编号:3 .2

激发条件:接收到学生的病历和体检信息时 输入:合格的学生病历和体检信息

输出:学生的成长状况表 处理:生成学生成长表

加工名:一般统计

编号:2 .1 .1

激发条件:接收到学生的病历和体检信息时 输入:合格的学生病历和体检信息

输出:统计学生信息的结果

处理:一般统计学生的的相关信息

加工名:动态分析

编号:2 .1 .2

激发条件:接收到学生的病历和体检信息时 输入:合格的学生病历和体检信息

输出:分析学生信息的结果 处理:动态分析学生的相关信息

加工名:查询体检

编号:2.2.1

激发条件:接收到学生的体检信息时 输入:合格的学生体检信息

输出:学生体检信息

处理:查询学生的体检信息

加工名:查询病历

编号:2.2.2

激发条件:接收到学生的病历信息时 输入:合格的学生病历信息

输出:学生病历信息

处理:查询学生的病历信息

加工名:计数统计

编号:2.1.1.1

激发条件:接收到学生的病历信息时 输入:合格的学生病历信息

输出:计数学生病历信息的结果 处理:计数学生的病历信息

加工名:平均身高

编号:2.1.1.2

激发条件:接收到学生的体检信息时 输入:合格的学生体检信息

输出:计算学生平均身高的结果 处理:计算学生的平均身高

加工名:平均体重 编号:2.1.1.3

激发条件:接收到学生的体检信息时 输入:合格的学生体检信息

输出:计算学生平均体重的结果 处理:计算学生的平均体重

加工名:平均胸围

编号:2.1.1.4

激发条件:接收到学生的体检信息时 输入:合格的学生体检信息

输出:计算学生平均胸围的结果 处理:计算学生的平均胸围

加工名:求增长率

编号:2.1.2.1

激发条件:接收到学生的体检信息时 输入:合格的学生体检信息

输出:计算学生平均增长率的结果 处理:计算学生的平均增长率

加工名:求增长值

编号:2.1.2.2

激发条件:接收到学生的体检信息时 输入:合格的学生体检信息

输出:计算学生平均增长值的结果 处理:计算学生的平均增长值

三、概要结构设计

整体E-R图

医务室 工作 n 病历文件 1 组成 n 病历表 1 检查 1 n 学生 1 分析 1 医生 m n m 填写 1 n 体检文件 1 组成 n 体检表 1 包含 n 体检项目 1 查询 体检

地址 电话 姓名 编号

性别 年龄 医务室 医生

医科类别 联系方式

性别 姓名 学号

专业 年龄 学生

班级 系别

联系方式 家庭住址

姓名 学号 姓名 学号

病历文件 体检文件

地址 电话 姓名 编号

性别 年龄 医务室 医生

医科类别 联系方式

性别 姓名 学号

专业 年龄 学生

班级 系别

联系方式 家庭住址

姓名 学号 姓名 学号

病历文件 体检文件

姓名 性别 学号 体检表 年龄 系别 联系方式 体检日期

项目编号 体检项目 项目名称 体检结果

年龄 学生姓名 学号 系别 性别 医生姓名 病历表 联系方式 医疗记录 病历日期

诊断结果 是否住院

地址 电话 姓名 编号 医务室 性别 医生 年龄 医科类别 联系方式 姓名 专业 性别 学号 年龄 学生 班级 系别 联系方式 家庭住址

姓名 学号 姓名 学号 病历文件 体检文件 姓名 性别 学号 体检表 年龄 系别 联系方式 体检日期

项目编号 体检项目 项目名称 体检结果 年龄 学生姓名 学号 系别 性别 医生姓名 病历表 联系方式 医疗记录 病历日期

诊断结果 是否住院

姓名 性别 学号 体检表 年龄 系别 联系方式 体检日期

项目编号 体检项目 项目名称 体检结果

年龄 学生姓名 学号 系别 性别 医生姓名 病历表 联系方式 医疗记录 病历日期

诊断结果 是否住院 四 、逻辑结构设计

实体关系模式如下(主码用下划线标出): 医务室(电话,地址)

医生(编号,姓名,性别,联系方式,医科类别)

学生(学号,姓名,性别,年龄,系别,专业,班级,联系方式,家庭住址)

联系关系模式如下(主码用下划线标出): 工作(编号,电话) 检查(编号,学号)

实体关系模式如下(主码用下划线标出): 病历文件(学号,姓名)

病历表(学号,学生姓名,性别,年龄,系别,联系方式,诊断结果,医疗记录,

病历日期,是否住院,医生姓名)

体检项目(项目编号,项目名称,体检结果)

联系关系模式如下(主码用下划线标出): 分析(学号,编号) 组成(学号,体检日期) 组成(学号,病历日期)

实体关系模式如下(主码用下划线标出): 体检文件(学号,学生姓名)

体检表(学号,学生姓名,学生性别,学生年龄,系别,联系方式,体检日期) 体检项目(项目编号,项目名称,体检结果)

联系关系模式如下(主码用下划线标出): 填写(学号,编号) 组成(学号,体检日期)

包含(学号,体检日期,项目编号)

五 、物理结构设计

体检文件:

名称 字段描述 数据类别 取值范围 是否为空 主键 外键

sno varchar 20 Y 学号 否

varchar 20 学生姓名 sname 否

体检表:

字段描述 数据类别 取值范围 是否为空 主键 外键 sno varchar 20 学号 否 Y sdate varchar 20 体检日期 否 名称 学生性别 系别 学生年龄 联系方式 学生姓名

填写:

ssex sdept sage stele sname char varchar int varchar varchar 10 20 10 20 20 否 否 否

名称 字段描述 数据类别 取值范围 是否为空 主键 外键 dno int 10 编号 否 Y sno varchar 20 学号 否

组成(体检文件和体检表):

名称 字段描述 数据类别 取值范围 是否为空 主键 外键 sno varchar 20 学号 否 Y sdate varchar 20 体检日期 否 包含:

字段描述 数据类别 取值范围 是否为空 主键 外键 sno varchar 20 学号 否 Y sdate varchar 20 体检日期 否 名称 项目编号

ino int 10 否 医务室:

字段名 字段描述 数据类别 取值范围 是否为空 主键 外键 地址 电话

医生:

名称 编号 姓名 性别 年龄 医科类别 联系方式

工作:

名称 电话 编号

学生:

名称 学号 姓名 性别 年龄 字段描述 数据类别 取值范围 是否为空 主键 外键 sno sname ssex sage varchar varchar char int 20 20 10 10 否 否 否 Y 字段描述 数据类别 取值范围 是否为空 主键 外键 htele dno varchar int 20 10 否 否 Y Y Y 字段描述 数据类别 取值范围 是否为空 主键 外键 dno dname dsex dage dcate dtele int varchar char int varchar varchar 10 20 10 10 20 20 否 否 否 否 Y hadd htele varchar varchar 50 20 否 Y 系别 专业 班级 家庭住址 联系方式

检查:

sdept sspe sclass sadd stele varchar varchar varchar varchar varchar 20 20 20 50 20 否 否 否 否 名称 字段描述 数据类别 取值范围 是否为空 主键 外键 编号 学号

dno sno int varchar 10 20 否 否 Y Y

病例文件: 名称 字段描述 数据类别 取值范围 是否为空 主键 外键 学号 sno varchar 20 否 Y 学生姓名 sname varchar 20 否

分析: 名称 字段描述 数据类别 取值范围 是否为空 主键 外键 编号 dno int 10 否 Y 学号 sno varchar 20 否 Y

病历表: 名称 字段描述 数据类别 取值范围 是否为空 主键 外键 学号 sno varchar 20 否 Y 病历日期 ddate varchar 20 否 学生姓名 sname varchar 20 否 学生性别 ssex char 10 否 学生年龄 sage int 10 联系方式 stele varchar 20 医生姓名 dname varchar 20 否 诊断结果 dresult varchar 500 否 医疗记录 drecord varchar 500 否 是否住院 dhos char 10 否

组成(病历文件与病历表): 名称 字段描述 数据类别 取值范围 是否为空 主键 外键 学号 sno varchar 20 否 Y 病历日期 ddate varchar 20 否

体检项目: 名称 字段描述 数据类别 取值范围 是否为空 主键 外键 项目编号 ino int 10 否 Y 项目名称 iname varchar 20 否 体检结果 sresult varchar 20 否

小结

在此次课程设计的过程中,我学到了很多知识,同时也感慨颇多。通过这次课程设计,我懂得了理论与实际相结合是很重要的,只有理论知识是远远不够的,我们必须把所学的理论知识与实践相结合起来,提高自己的实际动手能力和思考的能力。

在设计过程中,我们必须持着严谨认真的态度和作风。每一个细节都需要高度重视,如果不认真思考决策,就会出现或大或小的错误。若早期的错误隐藏下来,没被发现,就会对后面的工作产生很大的影响,甚至需要从头开始。由于自己的经验及各方面的能力不足,最开始的几天,我们的进度非常缓慢,后来通过查找资料,向老师和同学请教,才开始进入状况。在设计步骤中,画E-R图是很重要的。最开始的时候,我们没觉得有多难,没多久就画好了E-R图。原本以为画的还可以,可是当老师检查并给我们讲解的时候,才发现我们想得太简单了,并没有全面的思考,也没有作深入的探讨。课程设计的要求是相当严格的,每一步都必须思考到位,这样操作起来也方便。

在设计过程中,我们不断发现错误,不断改正错误,不断领悟,不断获取。从中,我懂得了在今后社会的发展和学习实践过程中,一定要不懈努力,不能遇到问题就想到要退缩,一定要不厌其烦的发现问题所在,然后一一进行解决,只有这样,才能获得最终的胜利。不然,将永远不能获得成功,也不能得到社会及他人对自己的认可!课程设计诚然是一门专业课,让我的专业知识以及专业技能上得到提升,同时又是一门讲道课,一门辩思课,给了我许多道、很多思,给了我莫大的空间。我认为,在此次实践中,不仅培养了思考、动手操作的能力,在各种其它能力上也都有了提高。更重要的是,我们学会了很多学习的方法。而这正是以后最实用的知识。要面对社会的挑战,只有不断的学习、实践,再学习、再实践。我想,以后不管有多苦,我们都要学会变苦为乐,从中寻找乐趣。

通过此次的课程设计,我明白了思路即出路,有什么不懂不明白的地方要及时请教或上网查询,只要肯花时间去认真钻研,动脑思考,动手实践,就没有弄不懂的知识。

参考文献

[1]钱雪忠 陈国俊。数据库原理及应用实验指导。第二版。北京:邮电大学出版社,2011。

[2] 钱雪忠 李京。数据库原理及应用。第三版。北京:邮电大学出版社,2010。

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- huatuo3.com 版权所有 蜀ICP备2023022190号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务