某医院信息管理系统数据库设计

  • 格式:doc
  • 大小:1.01 MB
  • 文档页数:13

下载文档原格式

  / 13
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

某医院信息管理系统数据库设计说明书

拟制人高勇

审核人______________________ 批准人______________________

【2013年1月13日星期日】

数据库设计说明书

1.引言

1.1编写目的

通过这次做实验,更加巩固练习SQL,ER图,UML建模,等知识,对自己的逻辑能力的锻炼!

1.2背景

a. 待开发软件系统的名称:

某医院信息管理系统

b. 本项目的任务提出者:

石河子大学

c. 本项目开发者:

高勇

d. 本项目用户:

医院职工

1.3参考资料

2.外部设计

2.1支持软件

本数据库主要采用微软公司的成熟数据库系统SQL Server2005,提供了较为灵活操作简单的功能,可以为数据库管理员和系统开发人员提供很好的支持。3.结构设计

3.1概念结构设计

本数据库将反映的现实世界中的实体、属性和它们之间的关系等的原始数据形式,包括各数据项、记录、系、文卷的标识符、定义、类型、度量单位和值域,系统登陆:

图4.1登录界面图

登录系统后进入XX省数字医院药品管理信息系统:

图4.2药品管理信息系统界面图

选择药品管理的功能。点数据修改,可以进入添加新的药品信息,对药品必填的信息必须写入,然后会弹出窗口提示添加成功;并可以在药品列表中查看到对于不符合的也可以在列表中进行修改或者直接删除。

图4.3 药品信息添加图

图4.4 药品列表显示图

添加药品信息后,可以进行库存初始化,选择库存管理项目可以进行库存管理功能:

首先进行库存初始化,并能在库存列表查看,也可以在库存列表中进行修改甚至删除。

图4.5 库存初始化添加图

图4.6 库存列表图

点入库单管理操作,进行此数据修改,可以实现药品入库处理,进行药品入库之后可以在入库单列表显示。并根据需要可在此进行数据修改和删除。需要注意的是,在进行药品入库的时候,需要查询药品编号,按照编号进行添加。

图4.7 入库单添加图

图4.8 入库单列表图

点击出库管理操作,可以对出库单进行管理,添加出库单即是对药品进行出库。出库后可在出库单列表显示,用户可以根据出库的内容如果需要修改和删除的可进行操作。

图4.9出库单添加图

3.2 E-R图

本系统涉及到以下实体:

用户

用户名用户密码

图2.4 用户E-R图

药品表

药品名称

药品名称

药品名称

药品名称

药品名称

药品名称

药品名称

图2.5 药品E-R图

图2.6 库存E-R图

图2.7 入库E-R图

图2.8 入库E-R图

库存表

批号药品编号

药品名称

散量单位

入库日期

整量单位

数量

有效日期进价

预售价

验收人

药品表化学名称

药品名称规格

厂商

批号

剂型

药品类别入库表

进价整量单位

数量

预售价

批号

药品编号入库日期出库表

批号

药品编号

数量验收人

出库日期

散量单位

验收人

库存下限

入库出库

库存初始化

关系

关系

1

N

1

1

1

1

N 11

N

图2.9 实体联系E-R 图

3关系图

图3.1药品信息管理关系图

图3.2

3.3物理结构设计

列名数据类型是否允许为空描述

id Int 否药品编号name Varchar(100) 是药品名称cname Varchar(100) 是化学名称standard Varchar(100) 是规格sort Varchar(100) 是药品类型type Varchar(100) 是剂型

marker Varchar(100) 是批号

address Varchar(150) 是厂商

列名数据类型是否允许空值默认值描述

id Int 否入库单号

did Int 是药品编号marker Varchar(100) 是批号

intime Datetime 是Getdate() 入库日期usefultime Datetime 是有效日期inprice Float 是0 进价outprice Float 是0 预售价num Int 是0 数量

5.存储过程脚本:

--创建存储过程统计某段时间内,各科室的就诊人数

create proc pro_renshu

@就诊人数int,@科室名varchar(10),@开始时间datetime,@结束时间datetime

as

select@就诊人数=count(*)from病人信息表where病人信息表.就诊科室=科室表.科室号

and就诊时间between @开始时间and @结束时间

group by科室名

having科室名=@科室名

6.触发器脚本:

--药品入库自动修改库存量

create trigger tri_rk

on药品入库表for insert

as

declare @药品编号int,@原库存量int,@入库量int

select @药品编号=did,@入库量=num from inserted

select @原库存量=num from药品库存量where did=@药品编号update药品库存表set num=@原库存量+@入库量where did=@药品编号

--药品出库自动修改库存量

create trigger tri_ck

on药品出库表for insert

as

declare @药品编号int,@原库存量int,@出库量int

select @药品编号=did,@出库量=num from inserted

select @原库存量=num from药品库存量where did=@药品编号update药品库存表set num=@原库存量-@出库量where did=@药品编号

7:数据库恢复与备份:

数据库的完全备份

backup database teacher

to disk ='f:\备份数据库\ teacher

with init

数据库的恢复

restore database teacher

from disk = 'f:\备份数据库\ teacher '

with recovery

数据库差异备份

backup database teacher

to disk ='f:\备份数据库\teacher

with init

数据库的恢复

restore database teacher

from disk = 'f:\备份数据库\ teacher

with norecovery