1、数据库原理与设计 i 实验室设备管理系统 目录 一、.系统开发背景 2 二、.系统分析与数据描述 2 2.1 可行性研究. 2 2.2 需求分析. 2 2.3 数据描述. 3 三、.概念设计与模式设计 5 四、.定义 6 五、.小结 9 数据库原理与设计 2 系统开发背景 实验室是咼校必不可少的最小细胞,研究生的科研生活离不开实验室中的各种资源。 对于东南大学这样 一个以工科见长的学校,这里的实验室的活动主要以自然科学实验以及工 程项目为主,这样实验室就必然会实用很多仪器设备,这些仪器设备总是面对大量的使用者, 并且被频繁地使用以至于设备更新速度较快。人工管理这些设备既浪费人力物力财力,又容
2、易导致各种错误的发生。 为了方便实验室管理, 应该开发一个更好更高效的软件来管理。实 验室设备管理系统, 就是为了这样一个目的设计的。就我校情况看来,目前我校的实验室设 备管理还处于较原始的手工阶段,缺少这样一套实用可靠的管理系统软件。随着电气化教学 和无纸化办公的一步步完善,利用计算机管理系统管理我校的实验室设备势在必行。因此, 本文拟开发一个 实验室设备管理系统。 本系统将建立一个实验室设备管理平台,记录实验室所有的实验设备,并及时反应设备 的运转状况,使用情况,以供研究生及其他试验人员合理的安排实验,达到工作效率的最优。 系统分析与数据描述 2.1 可行性研究 该实验室设备管理信息系统是
3、以ACCESS数据库为后台核心应用、以服务为目的信息平 台,对资源进行科学的加工整序和管理维护,为实验室设备信息提供管理。它能够在管理实 验室设备信息时发挥高效、便捷的作用,把系统管理员从繁重的工作中解脱出来。 系统成本低廉,使用后可以减少纸张的使用, 经济环保。同时系统开发与运行的需求条 件都很低,从 经济角度考虑,此实验室设备管理信息系统开发可行。 并且操作人员在使用时 仅仅需要简单的电脑基本操作 技能即可完成。 2.2 需求分析 随着东南大学综合实力的不断增强,各个实验室配套的设备越来越多,大到大型实验平 台,小到一台万用表,可以说是品种繁多且数量巨大。目前的管理方式管理这些设备耗费了
4、大量的人力物力,并且经常有错误发生, 使得科研活动受到影响, 或者实验室的财产遭受不 必要的损失。 面对大量的设备信息,如果采用专门的管理系统来进行设备的录入、 的记录, 将大大提高工作效率,使得设备的管理更加规范。 实验室设备管理系统除了要维护实验室中设备详细信息的数据表以外, 表进行 写入和读出数据的操作,相应的,该表还有记录读者的借用情况, 读者是否满意借用条件。系统还要管理员信息表,记录管理员的资料,检验管理员的登 陆, 管理员的权限等,另外,本实验室采用分散式管理方法,即每个设备交由不同的人负责管理, 每个负责人将有一个登录账户,用以进行实验室设备的分散管理,减轻管理员的负担。 输入
5、用户名和密码登录这套设备管理系统后,应该可以查看本实验室所有登记的设备, 还可以进一步查看此设备的相关的详细信息,例如设备进入实验室的时间、管理该设备的人 员的信息、借出状态、健康情况、预订情况等。 功能需求: 1)实验室设备信息查看:查看实验室所有设备当前状态信息,设备的信息包括设备负 责人信息、当前 使用人信息、设备借出、预订情况、损坏以及报废情况,进行查看后可以进 行预订、维修、报废等其他操作。 2)实验室设备财务管理:管理购买设备的消费记录和维修的花费记录。 跟踪以及维修情况 系统还应能对该 系统通过该表判断 数据库原理与设计 3 3)设备的借出与归还:每一个设备都有一个学生作为负责人
6、来管理这个设备,直到其 毕业释放这个设备的管理权。 其他人可以在设备空闲时向负责人提出借用请求。借用设备需 要负责人登录系统进行设备借出登记,归还后由负责人消除该条借出记录。 4)设备预订:在设备当前状态为借出时,可以向设备负责人提出预订请求,一旦设备 被归还即可以 优先使用设备。 5)设备报修与报废:设备负责人发现设备有损坏现象发生, 则要进行维修记录, 记录信 息应该包 括损坏原因、 日期等,并在维修之后在财务信息中登记维修费用, 然后取消该条维 修信息。如果设备不能 维修,则应该在设备报废信息中创建报废设备记录。 6)账户管理:需要管理管理员账户、各个负责人的账户以及设备使用者的账户,各
7、个 账户有自己的权限, 能够进行相应操作。 管理员权限最高,负责创建设备负责人账户、设备 使用者的账户和全局管理实验室的所有设备,包括设备购买维修和其他两种账户的所有操 作。设备负责人账 户可以进行维修以及报废登记以及所负责设备的跟踪。设备使用者能够使 用自己负责的设备(如果自己有负责设备)或者借用其他设备。 2.3 数据描述 2.3.2 数据库对象 1)账户:账户类型、帐户名、密码、真实姓名、年级、电话号码 2)设备相关财务信息:业务编号,设备编号、开销类型、开销日期、操作人、操作结果 3)全部设备信息:设备编号、设备名称、生产厂家、登记日期、维修次数、设备负责人 4)设备预订信息:设备编号
8、、预订时间、预订人 5)设备借出信息:设备编号、借出时间,借用人姓名,设备负责人 6)设备报废信息:设备编号、报废原因、报废日期 7)设备维修信息:设备编号、损坏原因、损坏日期、损坏程度,维修状态 8)设备使用人信息:使用人姓名、年级、所在项目组、电话号码。 数据库原理与设计 4 2.3.3 数据字典 帐户名,账户的名字,varchar,10 密码,登录系统的密钥,char,10 账户类型,账户的权限等级,char,6 真实姓名,账户拥有人的真实姓名,varchar,10 年级,账户拥有人所在的年级,char,2 电话号码,账户拥有人的电话号码,char,11 业务编号,一次购买或者维修记录的
9、编号,char,10 设备编号,一台设备的唯一标识,varchar,15 开销类型,购买新设备或者维修老设备,char,4 开销日期,设备购买或者维修的日期,smalldatetime,4 操作人,购买或者维修的付款经手人,varchar,10 操作结果,购买或者维修成功,char,8 设备名称,设备的名称,varchar,16 生产厂家,设备的生产厂家,varchar,50 登记日期,设备登记进入管理系统的日期,smalldatetime,4 维修次数,设备维修次数,char,1 设备负责人,管理这个设备的同学姓名,varchar,10 预订时间,预订这个设备的时间,smalldatetim
10、e,4 预订人,预订设备的人的名字,varchar,10 借出时间,设备借出的时间,smalldatetime,4 借用人姓名,借用设备的人的 名字, 报废原因,设备报废的原因, 报废日期,设备报废的时间, 损坏原因,设备损坏的原因, 损坏日期,设备损坏的时间, 损坏程度,设备损坏程度, 使用人姓名,使用设备的人的名字,varchar,10 所在项目组,设备被用在什么项目当中,varchar,20 电话号码,设备使用人的电话号码,char,11 varchar,50 smalldatetime,4 varchar,50 smalldatetime,4 varchar,50 char4 维修状态
11、,是否需要维修以及维修结果, 数据库原理与设计 5 三、概念设计与模式设计 年级 所在项目组 电话号码 _A 根据上述E-R图可以发现:一个帐户名可以操作多种设备信息,因此账户与全部设备 信息之间的关系 为1:n。同样一个帐户名可以进行多个购买新设备和维修旧设备的操作, 所以账户与财务信息关系也是 1:n。一个使用人可预订多台设备,借出设备信息与预订设 备信息关系为n:1。一个使用人可以使用多个设备,关系为1:n。同一个设备可能有不同 的维修记录信息,所以设备损坏信息与设备相关财务信息也构成1:n的关系。除了这些以 经过分析和研究,绘制了下面的E-R图: 业务编号 开销类型 开销日期 操作结果
12、 电话号码 设备相关 财务信息 /维修 1 L 设备编号1_1 M 查询 预订人 设备负责人|1 设备预订信息 设备使用人信息 设备损坏信息 使用人姓名 J 一 一 1 设备编号 损坏程度 账户类型 帐尸名 密码 真实姓名 设备编号 账户 1 生产厂家 设备编号 设备名称 帐户名 j 登记日期 帐户名设备编号 卜 记录 数据库原理与设计 6 外,所有查询与记录操作的关系都是1:1关系。 根据上述分析建立如下关系模式: 账户(帐户名、密码、账户类型、真实姓名、年级、电话号码)。 设备相关财务信息(业务编号,设备编号、开销类型、开销日期、操作人、操作结果) 全部设备信息(设备 编号、设备名称、生产
13、厂家、登记日期、维修次数、设备负责人) 设备预订信息(设备编号、预订时间、预 订人 )。 设备借出信息(设备编号、借出时间,借用人姓名,设备负责人)。 设备报废信息(设备编号、报废原因、报废日期)。 设备维修信息(设备编号、损坏原因、损坏日期、损坏程度,维修状态)。 设备使用人信息(借用人姓名级、所在项目组、电话号码)。 帐户名查看全部设备信息(帐户名,设备编号)。 帐户名记录设备相关财务信息(帐户名,设备编号)。 预订人预订多台设备(预订人姓名,设备编号)。 使用人使用多个设备(使用人姓名,设备编号)。 设备多次损坏(设备编号,业务编号)。 四、定义 由以上的工作,得到各模式,贝冋进行SQL
14、 定义,现将定义语句罗列如下: 1)账户 Create table账户 (帐户名varchar (10), 密码char (10), 账户类型char (6), 真实姓名varchar (10), 年级char (2), 电话号码char (11), Primary key (帐户名) ) 2)设备相关财务信息 Create table设备相关财务信息 (设备编号varchar (15), 开销类型char (4), 开销日期smalldatetime (4), 操作人varchar (10), 操作结果char (8), Primary key (设备编号) ) 3)全部设备信息 Creat
15、e table全部设备信息 (设备编号varchar (15),设备名称varchar(16) 生产厂家varchar(50) 数据库原理与设计 7 登记日期smalldatetime(4) 维修次数char(1) 设备负责人varchar(10) Primary key (设备编号) ) 4)设备预订信息 Create table设备预订信息 (设备编号varchar (15), 预订时间smalldatetime(4) 预订人varchar(10) Primary key (设备编号) ) 5)设备借出信息 Create table设备借出信息 (设备编号varchar (15), 借出时
16、间smalldatetime(4) 借用人姓名varchar(10) 设备负责人varchar(10) Primary key (设备编号) ) 6)设备报废信息 Create table设备报废信息 (设备编号varchar (15), 报废原因varchar(50) 报废日期smalldatetime(4) Primary key (设备编号) ) 7)设备维修信息 Create table设备维修信息 (设备编号varchar (15), 损坏原因varchar(50) 损坏日期smalldatetime(4) 损坏程度varchar(50) 维修状态char(4) Primary ke
17、y (设备编号) ) 8)设备使用人信息 Create table设备使用人信息 数据库原理与设计 8 (使用人姓名varchar (10), 年级char(2) 所在项目组varchar(10) 电话号码char(11)Primary key (使用人姓名) ) (帐户名,设备编号)。 (帐户名,设备编号 (预订人姓名,设备编号)。 (使用人姓名,设备编号)。 9)帐户名查看全部设备信息 Create table帐户名查看全部设备信息 (帐户名varchar (10), 设备编号varchar (15), Primary key (帐户名), Foreign key (帐户名)referen
18、ee账户(帐户名), Foreign key (设备编号)referenee全部设备信息(设备编号) ) 10)帐户名记录设备相关财务信息 Create table帐户名记录设备相关财务信息 (帐户名varchar (10), 设备编号varchar (15), Primary key (帐户名), Foreign key (帐户名)referenee账户(帐户名), Foreign key (设备编号)referenee设备相关财务信息(设备编号) 11)预订人预订多台设备 Create table预订人预订多台设备 (预订人姓名varchar (10), 设备编号varchar (15),
19、 Primary key (预订人姓名), Foreign key (预订人姓名)referenee设备预订信息(预订人姓名), Foreign key (设备编号)referenee设备预订信息(设备编号) ) 12)使用人使用多个设备 Create table使用人使用多台设备 (使用人姓名varchar (10), 设备编号varchar (15), Primary key (使用人姓名), Foreign key (使用人姓名)referenee设备使用人信息(使用人姓名), Foreign key (设备编号)referenee设备借出信息(设备编号) ) 数据库原理与设计 9 13
20、)设备多次损坏(设备编号,业务编号) Create table设备多次损坏 (设备编号varchar (15), 业务编号char (10), Primary key (设备编号), Foreign key (设备编号)referenee设备损坏信息(设备编号), Foreign key (业务编号)referenee设备相关财务信息(业务编号) ) 五、小结 由于时间的关系,实验室设备管理系统的设计只是给出了大体数据库的框架,并没有进 行详细的实现。实现过程中可能还会发现很多问题, 但系统主体基本定型, 能够按照本设计 实现实验室设 备管理系统。 通过数据库原理与设计方法这门课程的学习,我基本掌握了数据库的整体设计思路,将 这各流程通过大作业的形式进行练习,能够按照正确的设计步骤来设计一个数据库,但是在 设计过程中我发现还有很多逻辑上的错误,今后要加强实践,通过实际应用加深数据库理论 的理解,从而更加熟练地运用这门课程所学的知识。