您的当前位置:首页正文

实验室管理系统数据库设计

2022-02-02 来源:爱go旅游网


实验室管理系统

数据库设计说明书

拟制人 刘平平 戴祺

审核人

批准人

【2013年1月15日】

目 录

1。引言............................................................. 3

1。1课题背景.................................................... 3 1.2研究意义..................................................... 3 2.外部设计......................................................... 4

2。1支持软件.................................................... 4 3.结构设计......................................................... 4

3.1 逻辑结构 .................................................... 4 3.2物理结构..................................................... 6 4。 代码设计........................................................ 8

4。1触发器脚本.................................................. 8 4.2视图脚本..................................................... 9 4.3数据库恢复与备份............................................. 9

1.引言

1.1课题背景

计算机技术的进步, 促使现代工业技术在快速发展,随着科研和生产技术的不断发展, 原来的人工管理模式已显得不太适应, 而对于高校实验室, 无论其规模的大小, 每时每刻都会产生例如实验设备信息、实验数据、设备维修等等这样大量的信息, 这些数据、信息不仅是一些测量、分析的数据, 还有许多维持实验室运行的管理型数据。在以往的手工管理、纸袋储存数据的方式下,这些海量般的数据、信息, 使得实验室的管理人员以及使用人员为维护这些数据浪费了大量的物力和时间, 效率低下, 并且经常出错, 更谈不上数据的快速科学分析。

在这一背景下, 实验室信息管理系统( LIMS)开始出现, 并在实际应用中得到了快速发展, 成为一项崭新的实验室管理与应用技术。在当今这样一个网络信息时代, 除了提高实验室自身专业水准, 提高实验室的管理水准已经是唯一的选择。实验室信息管理系统( LIMS) 无疑会把实验室的管理水平提升到信息时代的高水平。

1.2研究意义

高校实验室信息管理系统是一个以实验室信息管理和实验信息管理为主的先进的网络系统,能够为用户提供充足的实验室信息和实验信息的查询手段。传统的人工管理实验室这种古老的方式来进行,已完全不能满足学校对实验室规划的需要,实验室信息管理系统能够极大地提高实验室管理的效率,也是使学校的科学化、正规化管理的重要条件。随着科学技术的不断提高,计算机科学日渐成熟,其强大的功能已为人们深刻认识,它已进入人类社会的各个领域并发挥着越来越重要的作用。

高校实验室信息管理系统就是要将手工管理变为计算机管理,把实验管理放在网上进行,达到高效、准确、便捷的目的。供学生查阅相关信息,限定学生在一定时间内统一在网上预约实验,实验完成后,由实验指导教师在网上为自己

的学生评分,上传到网络后学生查看成绩。

实验室管理系统能加强实验室规范管理,进行优化组合,理顺内、外部关系,有效利用实验室资源,优化实验室教学仪器的运行环境,构建一种全新的整合优势,将实验室管理员、教师、学生三者有机结合,以保证教学实验有序、顺利、合理的完成,提高实验课的效率,从而保障实验教学质量,提高实验室综合能力和效率,提高实验室的投资效益。

2.外部设计

2.1支持软件

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

SQL Server数据库

SQL是英文Structured Query Language的缩写,意思为结构化查询语言。SQL语言的主要功能就是同各种数据库建立联系,进行沟通。按照ANSI(美国国家标准协会)的规定,SQL被作为关系型数据库管理系统的标准语言。SQL语句可以用来执行各种各样的操作,例如更新数据库中的数据,从数据库中提取数据等。

目前,绝大多数流行的关系型数据库管理系统,如Oracle、Sybase、Microsoft SQL Server、Access等都采用了SQL语言标准[13]。虽然很多数据库都对SQL语句进行了再开发和扩展,但是包括Select、Insert,、Update、Delete、Create以及Drop在内的标准的SQL命令仍然可以被用来完成几乎所有的数据库操作。

3.结构设计

3。1 逻辑结构

3。1.1系统涉及的关系实体和对应关系

本系统有三个实体,分别是实验室、教师、学生。

实验室实体的基本属性有实验室名称,实验室地址,实验室标识、实验编号,实验教师,实验名称,实验内容,实验地点。一个实验室可以对多个学生,一个学生可以使用一个实验室,所以是一对多的关系。一教师可以指导一个实验,一个实验可以被一个教师所指导,所以是一对一的关系;一个学生可以选修多个实验,一实验可以被多个学生选修,所以是多对多的关系。

教师实体的基本属性有用户名,教师编号,性别,部门.由于一名教师可以使用多个实验室,一个实验室库可以被多个老师使用,所以是多对多的关系。

学生实体的基本属性有学号,性别,姓名.一个教师可以交多个学生,一个学生被一个老师交,所以是一对多的关系。

3.1。3总体E-R图

总体E—R图,如图3。5所示。

图3。5 E—R图

3.1.4 关系图

3.1。2关系模式

用户(用户名,用户密码,用户级别,关联ID) 实验室(实验室标识,实验室名称,实验室地点) 学生(学号,姓名,班级,性别,系别,专业) 教师(教师编号,用户名,性别,部门)

实验(实验编号,实验教师,实验地点,实验名称,实验内容,时间) 实验预约表(学生编号,实验编号,实验状态) 实验成绩表(学生编号,实验编号,成绩) 公告(编号,公告名称,公告要求,公告发布时间)

3.2物理结构

表3—1用户信息表(ex_user)

字段名称 标识 用户名 用户密码 字段标识 ID iuser Pass 数据类型 int vchar vchar 长度 4 50 50 允许空 No No No 主键 Yes No No

用户级别 关联ID Type glid int vchar 4 20 No Yes No No 表3—2实验室(ex_sys)

字段名称 实验室标识 实验室名称 实验室地点 字段标识 Sys_id Sys_name Sy_place 数据类型 int vchar vchar 长度 4 50 50 允许空 No No No 主键 Yes No No 表3—3学生(ex_stu)

字段名称 学号 姓名 班级 专业 性别 系别 用户名

字段标识 Stu_id Stu_name Stu_class Stu_zhy Stu_stu Stu_xb iuser 数据类型 vchar vchar vChar vChar vChar vChar vchar 长度 20 50 50 50 50 50 50 允许空 No No No No No No No 主键 Yes No No No No No Yes 表3—4教师(ex_tch)

字段名称 教师编号 用户名 性别 部门 字段标识 tch_id Username tch_sex tch_department 数据类型 vchar vchar vchar vchar 长度 50 50 50 50 允许空 No Yes Yes Yes 主键 Yes No No No 表3-5实验(ex_sy)

字段名称 自动编号 实验编号 实验教师 实验地点 字段标识 id sy_id Sy_tch Sy_place 数据类型 Int varchar varchar varchar 长度 4 80 50 50 允许空 No No No No 主键 no Yes No No

实验名称 实验内容 开始时间 结束时间

Sy_title Sy_content Sy_starttime varchar ntext datetime datetime 50 16 8 8 No No No No No No No No Sy_endtime 表3—6实验预约表(ex_syyy)

字段名称 学生编号 实验编号 实验状态 字段标识 Stu_id sy_id Sy_tch 数据类型 长度 允许空 Int vchar vchar 4 50 50 No No No 主键 Yes Yes No 表3-7公告(ex_note)

字段名称 自动学号 公告名称 公告要求 公告发布时间 字段标识 id ititle content itime 数据类型 Int vchar ntext datetime 长度 4 50 16 8 允许空 No No No No 主键 Yes No No No 表3—8实验成绩表(ex_sycj)

字段名称 学生学号 实验编号 成绩 字段标识 Stu_id sy_id Sy_tch 数据类型 长度 允许空 vchar vchar vchar 4 50 50 No No No 主键 Yes Yes No 4. 代码设计

4。1触发器脚本

修改表ex_sy中的sy_place,则表ex_sys中的sy_place随之改变

if exists (select * from ex_sy where name =’Product_ID' and type='tr’) drop trigger sy_place go

create trigger sy_place on Products for update as

if update(sy_place) begin

declare @sy_place_new char(50),@ sy_place_old char(50) select @sy_place_new=ProductID from inserted select @sy_place=sy_place from deleted

update ex_sys set sy_place =@ sy_place _new where ex_sy=@sy_place end go

update ex_stu set sy_place='asd' where sy_place=sdf' go

select * from ex_sy select * from ex_sys

4。2视图脚本

SELECT dbo.ex_stu。iuser, dbo。ex_sy.id, dbo。ex_sycj。Stu_id FROM dbo。ex_note INNER JOIN

dbo。ex_sy ON dbo.ex_note.id = dbo。ex_sy.id INNER JOIN

dbo。ex_sycj ON dbo.ex_sy.sy_id = dbo。ex_sycj.sy_id INNER JOIN dbo.ex_sys ON dbo.ex_sy。sy_id = dbo.ex_sys.sy_id CROSS JOIN dbo。ex_stu

4。3存储过程脚本

统计每位老师所教学生的人数的存储过程 create proc pro_tjxsrs

@tch int,@stunum int output as

select @stunum=count(*) from jiaoke group by tch_id having tch_id=@tch

测试存储过程

declare @tch int,@stunum int select @tch=1

exec pro_tjxsrs @tch,@stunum output print @stunum

—-统计某一实验的状态的存储过程 create proc pro_state

@stu int,@sy int,@Sy_tch varchar(50) output as

select @Sy_tch=Sy_tch from ex_syyy where @stu=stu_id and @sy=sy_id

4。3数据库恢复与备份

数据库的完全备份

backup database shiyanshiguanli

to disk ='f:\\备份数据库\\shiyanshiguanli’ with init go

数据库的恢复

restore database shiyanshiguanli

from disk = ’f:\\备份数据库\\shiyanshiguanli with recovery go

数据库差异备份

backup database shiyanshiguanli

to disk =’f:\\备份数据库\\ shiyanshiguanli

with differential

go

数据库的恢复

restore database shiyanshiguanli

from disk = 'f:\\备份数据库\\ shiyanshiguanli with norecovery go

restore database shiyanshiguanli

from disk = 'f:\\备份数据库\\ shiyanshiguanli with file=2 go

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