医院管理系统数据库.docx
- 文档编号:28300665
- 上传时间:2023-07-10
- 格式:DOCX
- 页数:30
- 大小:405.95KB
医院管理系统数据库.docx
《医院管理系统数据库.docx》由会员分享,可在线阅读,更多相关《医院管理系统数据库.docx(30页珍藏版)》请在冰豆网上搜索。
医院管理系统数据库
专业实习报告
姓名
学号
系别信息工程系
专业12 本电子商务
班级1 班
广东财经大学华商学院
二O年月日
医院管理系统数据库的
设计与实现
1 系统分析
通常系统分析包括处理对象、处理功能要求和安全性完整性要求。
(1)处理对象
药店药品管理系统的处理对象主要包括:
药品资料信息,病人信息,门诊挂号信息,医生信息,
科室资料等几个方面,其具体内容如下(详细信息查看数据项):
①药品资料信息:
药品编号、药品名称、药品分类、药品规格、药品品牌、进药单价、买药单
价,制药商等方面,这样可以方便的查询药品的基本信息,了解药品盈利情况(单个药品盈利=买药
单价-进药单价)、哪种品牌的药品比较畅销等。
②病人信息:
编号,姓名,性别,出生日期,联系电话,身份证号,住址推定情况等。
便于药
品出现问题时及时与当事人联系。
③门诊挂号信息:
挂号编号,科室编号,挂号类别,是否退号,挂号费,挂号日期。
④医生信息:
医生编号,姓名,性别,出生日期,所属科室编号,职称,入院时间
⑤科室资料:
科室编号,科室名,科长编号,电话
⑥护士信息:
护士编号,姓名,性别,出生日期,所属科室编号,值班时间,联系方式
⑦病房信息:
病房编号、床位数,科室名,病人编号,病人姓名,病人性别,病人入住时间,
病人离院时间,病房楼层吗,住院费用
⑧药品库存:
药品编号,存储编号,药品数量,存储位置,存储时间,取药时间,取药数量
2 业务流程 (怎么运作的)
业务或业务活动是对组织或企业的一切专业工作和活动的总称。
业务流程图是根据系统详细调
查过程中所得的资料和问卷调查的结果,按业务实际处理过程绘制成的图,在药店药品管理系统中,
经分析调查,其大致可以分为三个管理:
药品存取管理、医生调配管理、护士调配管理,病人挂号
管理。
(1)病人挂号管理:
病人来到医院看病,一般首先是挂号,登记病人信息,然后病人拿到挂号单
等候医生看病,需要住院的病人拿取病房
(2)医生调配管理:
接到挂号单,科室调配医生帮病人看病,医生根据病人病情开药单
(3)药品存取管理:
一个医院要开张营业,首先要购进药物,购药人员根据售药处对药品的需求
以及库存信息,制定药品的需求单据并从制药商那求购所需的药品。
购进药品后,购药人员将合格
药品单据送往库存管理员进行药物存储,将不合格的药品单据送往制药商进行退货处理。
药品管理
人员接到医生开药单,到仓库根据药的存储编号找到存储位置拿药。
(4)护士调配管理:
接到挂号单,科室调配护士负责病人的住院情况
4.全局 E-R 图
解决各分 E-R 图之间存在的属性冲突、命名冲突、结构冲突等冲突,将各分 E-R 图合并起来生
成初步 E-R 图,再消除不必要的冗余后得到全局 E-R 图如下:
(注:
为了节省篇幅,在全局 E-R 图中省去了各个实体以及实体之间联系的属性。
见附表:
医院管理系统数据库的设计与实现 er 图
二、数据表结构
表 2-1 药品表
属性名数据类型是否为空主键/外键取值范围
药品编号char(5)否主键
药品名称char(20)否
药品分类char(8)
药品规格char(10)
药品品牌char(10)
进药单价float否大于零
卖药单价float否大于零
表 2-2 病人表
属性名数据类型是否为空主键/外键取值范围
病人编号char(5)否主键
病人姓名char(10)否
出生日期Char(8)否
性别char
(2)否男、女
联系电话char(11)
住址char(20)否
身份证号Char(20)否
挂号编号Char(5)
表 2-3 医生表
属性名数据类型是否为空主键/外键取值范围
医生编号char(5)否主键
医生姓名char(10)否
性别char
(2)否男、女
出生日期char(10)否
职称char(10)否
入院时间char(10)否
所属科室编号char(5)否外键
工资float
表 2-4 挂号表
属性名数据类型是否为空主键/外键取值范围
挂号编号char(5)否主键
挂号类别char(15)否
科室编号char(5)否外键
是否退号char
(2)
挂号费float否
挂号日期char(10)否
科长编号Char(5)否外键
表 2-5 科室表
属性名数据类型是否为空主键/外键取值范围
科室编号char(5)否主键
科室名char(10)否
科长编号char(5)否外键
电话char(11)
药品编号Char(5)外键
表 2-6 护士表
属性名数据类型是否为空主键/外键取值范围
护士编号char(5)否主键
护士姓名char(5)否
性别char
(2)否男/女
出生日期char(10)
所属科室编号char(5)外键
联系方式char(11)
值班时间smalldatetime否
工资float
病人编号Char(5)否外键
表 2-7 病房表
属性名数据类型是否为空主键/外键取值范围
病房编号char(5)否主键
病床编号Char
(2)否
床位数char(6)否
病人编号char(5)否外键
病人姓名char(10)否
病人性别char
(2)
病人入住时间char(10)
病人离院时间char(10)
病房楼层Char
(2)
住院费用float
表 2-8 药品库存表
属性名数据类型是否为空主键/外键取值范围
药品编号char(5)否外键
存储编号char(5)否
药品数量Char(10)
存储位置Char(20)
存储时间Char(10)
取药时间Char(10)
取药数量Char(10)
三.创建表的相关语句
create table 药品表(
药品编号 char(5) not null primary key,
药品名称 char(20) not null ,
药品分类 char(8),
药品规格 char(10),
药品品牌 char(10),
进药单价 float not null check(进药单价>0),
卖药单价 float not null check(卖药单价>0)
)
create table 病人表(
病人编号 char(5) not null primary key,
病人姓名 char(10) not null,
出生日期 char(8) not null,
性别 char
(2) not null,
联系电话 char(11),
住址 char(20) not null,
身份证号码 char(20) not null
)
alter table 病人表
add 挂号编号 char(5) not null foreign key references 挂号表(挂号编号)
create table 医生表(
医生编号 char(5) not null primary key,
医生姓名 char(10) not null ,
性别 char
(2) not null,
出生日期 char(10) not null,
职称 char(10) not null,
入院时间 char(10) not null,
所属科室编号 char(5) not null foreign key references 科室表(科室编号),
工资 float
)
select * from information_schema.columns where table_name = '医生表'
create table 挂号表(
挂号编号 char(5) not null primary key,
挂号类别 char(15) not null ,
科室编号 char(5) not null foreign key references 科室表(科室编号),
是否退号 char
(2) ,
挂号费 float not null,
挂号日期 char(10) not null,
)
alter table 挂号表
add 科长编号 char(5) not null foreign key references 医生表(医生编号)
create table 科室表(
科室编号 char(5) not null primary key,
科室名 char(10) not null,
科长编号 char(5) not null ,
电话 char(11)
)
alter table 科室表
add 药品编号 char(5) not null foreign key references 药品表
alter table 科室表
add constraint ref_wh
foreign key(科长编号) references 医生表(医生编号)
create table 护士表(
护士编号 char(5) not null ,
护士姓名 char(5) not null,
性别 char
(2) not null,
出生日期 char(10),
所属科室编号 char(5) foreign key references 科室表(科室编号),
联系方式 char(11),
值班时间 smalldatetime not null,
工资 float
)
alter table 护士表
add constraint PK_护士编号
primary key (护士编号)
alter table 护士表
add 病人编号 char(5) not null foreign key references 病人表(病人编号)
alter table 护士表
add 病房编号 char(5) not null foreign key references 病房表(病房编号)
create table 病房表(
病房编号 char(5) not null,
病床编号 char
(2) not null ,
床位数 char(6) not null,
科室名 char(10) not null,
病人编号 char(5) not null,
病人姓名 char(10) not null,
病人性别 char
(2) not null,
病人入住时间 char(10) not null,
病人离院时间 char(10),
病房楼层 char
(2),
primary key(病房编号,病床编号)
)
alter table 病房表
drop column 科室名
alter table 病房表
add constraint FK
foreign key (病人编号) references 病人表(病人编号)
alter table 病房表
drop constraint PK__病房表__13402C5B5441852A
alter table 病房表
drop constraint PK
alter table 病房表
add constraint PK
primary key (病房编号)
alter table 病房表
add constraint PK primary key (病床编号)
alter table 病房表
add 住院费用 float
select a.Name as 表名,b.Xtype as 键类型,b.Name as 键名
from sysobjects a,sysobjects b
where a.ID=b.parent_obj and a.name='病房表'and b.Xtype in('F','PK')
create table 药品库存表(
药品编号 char(5) not null foreign key references 药品表(药品编号),
存储编号 char(5) not null
)
alter table 药品库存表
add 药品数量 char(10)
alter table 药品库存表
add 存储位置 char(20)
alter table 药品库存表
add 存储时间 char(10)
alter table 药品库存表
add 取药时间 char(10)
alter table 药品库存表
add 取药数量 char(10)
四、相关的触发器及存储过程
1.当有病人退号时,将其编号插入退号单
create proc 退号单 (@chargeback char(5))
as
declare @挂号编号 char(5)
select @挂号编号 from 挂号表
insert into 退号单 values(@chargeback, @挂号编号)
2.当有病人出院时,将他从病人表中删除并插入到出院单
create trigger 出院单 on 病人表
for delete
as
insert into 出院单
select* from deleted
3.当护士到药品库存取药时,药品数量会减少相应的量
create trigger 剩余药品数量
on 药品库存表
after insert
as
update 药品库存表
set 药品库存表.药品数量=药品库存表.药品数量 - 药品库存表.取药数量
from 药品库存表,inserted
4.将病人的信息存储到病人信息中
create proc 病人信息
@病人编号 char(5),
@病人姓名 char(10),
@病人出生日期 char(8),
@病人性别 char
(2),
@病人联系电话 char(11),
@病人住址 char(20),
@病人身份证号码 char(20),
@病人挂号编号 char(5),
@病人病床编号 char
(2),
@病人入住时间 char(10),
@病人离院时间 char(10),
@病房楼层 char
(2),
@住院费用 float,
@挂号费 float,
@挂号编号 char(5),
@挂号类别 char(15),
@病房编号 char(5)
as
insert into 病人信息 values(@病人姓名,
@病人出生日期 ,
@病人性别,
@病人联系电话 ,
@病人住址,
@病人身份证号码,
@病人挂号编号 ,
@病人病床编号,
@病人入住时间,
@病人离院时间,
@病房楼层 ,
@住院费用,
@挂号费,
@挂号编号,
@挂号类别,
@病房编号)
五、数据库调试
(调用一下自己创建的 TSQL 语句是否
成功,截图)
附表:
医院管理系统数据库的设计与实
现 er 图
药品品牌
存储时间
药品名称
药品编号
卖药单价
药品
存取
库存
药品数量
进药单价
药品分类
存储编号
存储位置
药品规格
取药时间
科室编号
医生编号
医生姓名
性别
出生日期
挂号编号
科室名
挂号类别
科长编号
科室
调出
医生
看病
挂号单
科室编号
是否退号
电话
职称
工资
药品编号
入院时间 所属科室
挂号费
编号
科长编号
挂号日期
病人编号
病人编号
病人住院时间
病房编号
病人编号
病人离院时间
病人编号
病床编号
病人编号
病人
病人编号
床位数
病房
病房楼层
病人编号
病人性别
病人姓名
病人编号
病人编号
调进
护
病房编号
护士编号
护士
理
所属科室编号
病人编号
工资
值班时间
护士姓名联系方式
出生日期
性别
实习指导老师评语:
签名:
年月日
成绩评定:
签名:
年月日
备注:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 医院 管理 系统 数据库