数据库课程设计--医院管理系统.pdf
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《数据库课程设计--医院管理系统.pdf》由会员分享,可在线阅读,更多相关《数据库课程设计--医院管理系统.pdf(33页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、可编辑修改 欢迎下载,希望对您有帮助!内容摘要 数据库的设计是指对一个给定的应用环境,构造数据库模式,建立数据库及其应用系统,满足各种用户需求。作为信息资源开发、管理和服务的一种有效的手段,数据库技术的应用已越来越广泛,从小型的单项事务处理系统到大型的信息系统大都用先进的数据库技术来保持系统数据的安全性、完整性和共享性。对一个实际的系统来说,数据库表的设计在遵循数据库理论的同时,必须能用开发工具来实现用户在各方面提出的功能要求。本医院管理系统是经过实地需求分析调查、通过概念机构设计与逻辑结构设计等过程后完成的一个小型管理系统,包括:对医生、护士、收费人员、病人、药品及检查的各种基本信息的查询功
2、能,对病人病房、收费的管理功能等。同时对不同的人员授予不同的权利,保证了数据库的安全性。关键词:医院管理 需求分析 查询 住院管理 收费管理 可编辑修改 欢迎下载,希望对您有帮助!目 录 第一章 需求分析.5 1.1信息要求.5 1.2处理要求.5 1.3安全性和完整性要求.5 第二章 概念结构设计.1 2.1分E-R流程图.1 2.2总E-R流程图.4 第三章 逻辑结构设计.5 3.1关系模型.5 3.2设计用户子模式.5 第四章 物理结构设计.6 第五章 数据库实施.9 5.1创建医院管理系统.9 5.2创建必要索引.10 5.3建立视图.10 5.4建立必要的存储过程及触发器.11 第六
3、章 数据库应用系统的实施和维护.13 总结.18 致谢.19 参考文献.20 附录.20 可编辑修改 欢迎下载,希望对您有帮助!医院管理系统 第一章 需求分析 1.1 信息要求 本系统实现了以下信息:基本信息模块:包括行政人员信息、医生信息、护士信息、收费人员信息、病人信息、病房信息、药品信息。管理信息模块:人员管理(员工、病人)、药品管理、住院部管理、收费管理。1.2 处理要求 要求本系统能够投入实际的使用并且满足基本的功能要求。要求具有较高的可靠性、安全性和易维护性,具有较高的可移植性。具体要求如下:(1)基本信息查询 该查询主要是指对医生、病人等信息的查询。(2)医患 病人来医院看病,为
4、其选择科室,进而选择医生,对病人挂号登陆就医信息。(3)收费 病人通过自己的编号可以到收费窗口查询和缴纳自己的药费和检查费。(4)住院 对住院的病人在住院部登录信息,住院部确定病人病房病床,安排所属区域护士对病人进行辅助治疗和看护。1.3 安全性和完整性要求 该系统对不同人员进行了不同的权限设置:行政人员可以查看医院数据库中的任何信息、医生只能查询病人及病人住院的信息,收费人员只能查看收费信息。可编辑修改 欢迎下载,希望对您有帮助!第二章 概念结构设计 2.1 分 E-R 流程图 图 2-1 行政人员概念模型 图 2-2 医生概念模型 图 2-3 护士概念模型行政人员 编号 姓名 性别 联系方
5、式 职务 年龄 医生 编号 姓名 性别 联系方式 所属科室 年龄 护士 编号 姓名 性别 所属科室 年龄 可编辑修改 欢迎下载,希望对您有帮助!图 2-4 病人概念模型 图 2-5 检查、药品概念模型 图 2-6 收费人员概念模型 图 2-7 病房病床概念模型病人 编号 姓名 性别 联系方式 所属科室 年龄 检查、药品 编号 名称 价格 位置 收费人员 编号 姓名 性别 年龄 病床信息 编号 所属科室 标志量 可编辑修改 欢迎下载,希望对您有帮助!图 2-8 医患关系概念模型 图 2-9 病人住院概念模型 图 2-10 收费信息概念模型 病人住院 医生编号 病人编号 护士编号 住院时间 住院床
6、位收费信息 收费员编编号 病人编号 药品编号 总价格 医患关系 医生编号 病人编号 看病时间 可编辑修改 欢迎下载,希望对您有帮助!2.2 总 E-R 流程图 图 2-11 总体 E-R 概念模型 医生 病人 医患 收费员 住院部 缴费 住院 护士 属于 可编辑修改 欢迎下载,希望对您有帮助!第三章 逻辑结构设计 3.1 关系模型 系统中所涉及的关系如下:行政人员(行政人员编号,行政人员姓名,性别,年龄,职务,联系方式)医生(医生编号,医生姓名,性别,年龄,所属科室,联系方式)病人(病人编号,病人姓名,性别,年龄,就医科室,联系方式)住院部(病房病床编号,所属科室,是否住人)护士(护士编号,护
7、士姓名,性别,年龄,所属科室)检查及药品(检查或药品编号,检查或药品名称,单价,检查或存放地点)收费人员(收费人员编号,收费人员姓名,性别,年龄)医患(医生编号,病人编号,就医时间)收费(收费流水账号,收费人员编号,病人编号,药品或检查编号,数量,价格)住院管理(病床号,病人编号,医生编号,护士编号,入住时间)3.2 设计用户子模式 根据用户的需求,也为了保护系统的安全性,本系统设计了下面一些视图:病人基本信息查询表(病人编号,病人姓名,性别,年龄,就医科室,联系方式,主治医生编号,主治医生姓名,就医时间);住院管理查询表(病床号,病人编号,病人姓名,所属区域,入住时间,所属区域护士编号,护士
8、姓名);收费信息表(收费流水账号,收费人员编号,病人编号,药品或检查编号,数量,价格)。可编辑修改 欢迎下载,希望对您有帮助!第四章 物理结构设计 表 4-1 行政人员表 表 4-2 医生信息表 表 4-3 护士信息表 字段名 字段类型 长度 主键或外键 字段值约束 对应中文属性名 Ano varchar 10 Primary Key Not null 行政人员编号 Aname varchar 20 Not null 行政人员姓名 Asex char 2 行政人员性别 Aage int 行政人员年龄 Adept varchar 30 行政人员职务 Atel varchar 11 行政人员联系方
9、式 字段名 字段类型 长度 主键或外键 字段值约束 对应中文属性名 Dno varchar 10 Primary Key Not null 医生编号 Dname varchar 20 Not null 医生姓名 Dsex char 2 医生性别 Dage int 医生年龄 Ddept varchar 30 医生所属科室 Dtel varchar 11 医生联系方式 可编辑修改 欢迎下载,希望对您有帮助!表 4-4 病人信息表 字段名 字段类型 长度 主键或外键 字段值约束 对应中文属性名 Nno varchar 10 Primary Key Not null 护士编号 Nname varcha
10、r 20 Not null 护士姓名 Nsex char 2 护士性别 Nage int 护士年龄 Ndept varchar 30 Not null 护士所属科室 字段名 字段类型 长度 主键或外键 字段值约束 对应中文属性名 Pno varchar 10 Primary Key Not null 病人编号 Pname varchar 20 Not null 病人姓名 Psex char 2 病人性别 可编辑修改 欢迎下载,希望对您有帮助!表 4-5 收费人员信息表 表 4-6 检查及药品信息表 表 4-7 病房病床信息表 表 4-8 医患关系表 表 4-9 住院信息表 Page int 病
11、人年龄 Pdept varchar 30 Not null 病人就医科室 Ptel varchar 11 病人联系方式 字段名 字段类型 长度 主键或外键 字段值约束 对应中文属性名 Cno varchar 10 Primary Key Not null 收费人员编号 Cname varchar 20 Not null 收费人员姓名 Csex char 2 收费人员性别 Cage int 收费人员年龄 字段名 字段类型 长度 主键或外键 字段值约束 对应中文属性名 Dnum varchar 10 Primary Key Not null 检查或药品编号 Dnam varchar 20 Not
12、null 检查或药品名称 Dprice money 检查或药品价格 Dstorage varchar 30 检查地点或药品存放处 字段名 字段类型 长度 主键或外键 字段值约束 对应中文属性名 Hbednumber char 6 Primary Key Not null 病床编号 Hdept varchar 30 病床所属科室 Hflag int Not null 病床是否住人 字段名 字段类型 长度 主键或外键 字段值约束 对应中文属性名 Dno char 6 Primary Key Not null 医生编号 Pnot varchar 30 Primary Key Not null 病人编
13、号 DPTime int 看病时间 字段名 字段类型 长度 主键或外键 字段值约束 对应中文属性名 Pno varchar 10 Foreign Key 病人编号 Dno varchar 10 Foreign Key 医生编号 Nno varchar 10 Foreign Key 护士编号 HTime Date 入住时间 Hbednumber char 6 Primary Key Not null 病床号 可编辑修改 欢迎下载,希望对您有帮助!表 4-10 收费信息表 字段名 字段类型 长度 主键或外键 字段值约束 对应中文属性名 Tno varchar 10 Primary Key Not
14、null 收费流水账号 Cno varchar 10 Foreign Key 收费人员编号 Pno varchar 10 Foreign Key 病人编号 Dnum varchar 10 Foreign Key 药品或检查编号 Tnumber int 数量 Tprice money 6 价格 可编辑修改 欢迎下载,希望对您有帮助!第五章 数据库实施 5.1 创建医院管理系统-创建医院管理系统数据库 CREATE DATABASE hospitalsystem ON(NAME=hospital_data,FILENAME=e:05hospital_data.mdf,SIZE=10MB,MAXSI
15、ZE=300MB,FILEGROWTH=10%)LOG ON(NAME=hospital_log,FILENAME=e:05hospital_data.ldf,SIZE=5MB,MAXSIZE=200MB,FILEGROWTH=2MB)-例举创建各类信息表 创建医生信息表 CREATE TABLE Doctor (Dno VARCHAR(10)PRIMARY KEY,Dname VARCHAR(20),Dsex VARCHAR(2),Dage INT,Ddept VARCHAR(50),Dtel VARCHAR(11);创建病人信息表 CREATE TABLE Patient(Pno VARC
16、HAR(10)PRIMARY KEY,Pname VARCHAR(20),Psex VARCHAR(2),Page INT,Ptel VARCHAR(11),Pdept VARCHAR(50);创建医生病人关系表 CREATE TABLE Doctor_Patient(Dno VARCHAR(10),Pno VARCHAR(10),DPTime Date,PRIMARY KEY(Dno,Pno),FOREIGN KEY(Dno)REFERENCES Doctor(Dno),FOREIGN KEY(Pno)REFERENCES Patient(Pno);创建住院病人信息表 create tabl
17、e PHouse(Pno VARCHAR(10),Dno VARCHAR(10),Nno VARCHAR(10),HTime Date,Hbednumber CHAR(6)PRIMARY KEY,FOREIGN KEY(Dno)REFERENCES Doctor(Dno),FOREIGN KEY(Pno)REFERENCES Patient(Pno),FOREIGN KEY(Nno)REFERENCES Nurse(Nno);创建收费信息表 CREATE TABLE Charge(Tno VARCHAR(10)PRIMARY KEY,Cno VARCHAR(10),Pno VARCHAR(10
18、),Dnum VARCHAR(10),Tnumber INT,Tprice MONEY,FOREIGN KEY(Cno)REFERENCES Charger(Cno),FOREIGN KEY(Pno)REFERENCES Patient(Pno),FOREIGN KEY(Dnum)REFERENCES Drug(Dnum);可编辑修改 欢迎下载,希望对您有帮助!5.2 创建必要索引 CREATE INDEX Administor_INDEX ON Administor(Ano);CREATE INDEX Doctor_INDEX ON Doctor(Dno);CREATE INDEX Nurs
19、e_INDEX ON Nurse(Nno);CREATE INDEX Patient_INDEX ON Patient(Pno);CREATE INDEX Drug_INDEX ON Drug(Dnum);CREATE INDEX House_INDEX ON House(Hbednumber);5.3 建立视图-创建医生信息视图 CREATE VIEW 医生信息_VIEW AS SELECT Dno 医生编号,Dname 医生姓名,Dsex 性别,Dage 年龄,Ddept 部门,Dtel 电话 FROM Doctor;SELECT*FROM 医生信息_VIEW WHERE 医生编号=D00
20、1;-创建收费人员信息视图 CREATE VIEW 收费人员信息_VIEW AS SELECT Cno 收费人员编号,Cnam 收费人员姓名,Cage 年龄,Csex 性别 FROM Charger;SELECT*FROM 收费人员信息_VIEW WHERE 收费人员编号=C001;-创建病人信息视图 CREATE VIEW 病人信息_VIEW AS SELECT Patient.Pno 病人编号,Pname 病人姓名,Psex 性别,Page 年龄,Ptel 电话,Pdept 就诊科室,Doctor.Dno 主治医生编号,Dname 主治医生姓名,DPTime 就诊时间 FROM Patie
21、nt,Doctor,Doctor_Patient WHERE Patient.Pno=Doctor_Patient.Pno AND Doctor_Patient.Dno=Doctor.Dno;SELECT*FROM 病人信息_VIEW WHERE 病人编号=P001;-创建住院部管理视图 CREATE VIEW 住院部信息_VIEW AS SELECT House.Hbednumber 病房床位编号,Patient.Pno 病人编号,Pname 病人姓名,Hdept 所属区域,Nurse.Nno 所属护士编号,Nname 所属护士姓名可编辑修改 欢迎下载,希望对您有帮助!FROM House,
22、Nurse,Patient,PHouse WHERE House.Hbednumber=PHouse.Hbednumber AND PHouse.Nno=Nurse.Nno AND PHouse.Pno=Patient.Pno;SELECT*FROM 住院部信息_VIEW WHERE 病房床位编号=240902;-创建药品信息视图 CREATE VIEW 检查及药品信息_VIEW AS SELECT Dnum 编号,Dnam 名称,Dprice 单价,Dstorage 位置 FROM Drug;-创建收费信息视图 CREATE VIEW 收费信息_VIEW AS SELECT Tno 收费编号
23、,Cno 收费员编号,Pno 病人编号,Dnum 药品编号,Tnumber 数量,Tprice 价格 FROM Charge;5.4 建立必要的存储过程及触发器 触发器一 检查病人挂号与医生科目是否相同 CREATE TRIGGER 病人医生 ON Doctor_Patient FOR INSERT AS DECLARE DDEPT VARCHAR(20),PDEPT VARCHAR(20),DNO VARCHAR(20),PNO VARCHAR(20)BEGIN SELECT DNO=Dno FROM INSERTED SELECT PNO=Pno FROM INSERTED SELECT
24、DDEPT=Ddept FROM Doctor WHERE Dno=DNO SELECT PDEPT=Pdept FROM Patient WHERE Pno=PNO IF(DDEPT=PDEPT)PRINT 插入成功 ELSE BEGIN PRINT 无法插入 ROLLBACK END END GO 可编辑修改 欢迎下载,希望对您有帮助!触发器二 检查病人病房科目是否相,同病床是否有人 CREATE TRIGGER 病人住院 ON PHouse FOR INSERT AS DECLARE BEDNUM VARCHAR(10),PNO VARCHAR(20),PDEPT VARCHAR(30)
25、,HDEPT VARCHAR(30),FLAG INT SELECT PNO=Pno FROM INSERTED SELECT BEDNUM=Hbednumber FROM INSERTED SELECT PDEPT=Pdept FROM Patient WHERE Pno=PNO SELECT HDEPT=Hdept FROM House WHERE Hbednumber=BEDNUM SELECT FLAG=Hflag FROM House WHERE Hbednumber=BEDNUM IF(FLAG=1)BEGIN PRINT 病房正在被使用!ROLLBACK END ELSE BEG
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 课程设计 医院 管理 系统
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内