美章网 资料文库 高校科研管理系统数据库设计范文

高校科研管理系统数据库设计范文

高校科研管理系统数据库设计

科研水平逐渐成为衡量一个高校势力的重要指标,高校作为重要的科研机构,如何对学校大量的科研信息进行高效、安全的保存、处理、统计、加工等管理操作,将日常的科研管理工作更加规范化、科学化,建立高校科研管理系统进行科研管理工作是每一个高校必由之路。系统功能的分析与数据的结构关联及使用都首先反映在数据库的设计过程中,高校科研管理系统数据库设计是高校科研管理系统设计中的一项核心工作,所有的管理工作都必须以数据库为中心,建立高校科研管理系统数据库的方法、步骤、技术等如下:

1系统需求分析

高校科研管理所设计的事务非常繁杂,涉及到校科研处、各个系的科研管理以及个人对科研信息的查询统计等。所设计的系统既要有利于科研处的监督管理又要有利于各个系及教师的分工协作。系统功能主要包括校科研处科研管理、院系(或部门)科研管理、个人科研信息查询、校级科研项目整体信息管理。可以划分为科研信息维护、科研信息查询与统计、科研信息报表、科研信息分析、校级课题申报、审批、合同签定、结题、其它处理等操作;其中科研信息应细分为学术论文、著作、科研项目、科研成果、科研奖励等信息。

2用户需求分析

由于本系统是直接面向网上办公的,必须适应所服务环境的各类操作人员,主要包括学校科研处、各院系(或部门)、普通教师个人(或其他浏览者)。

2.1普通教师个人(或其他浏览者)

普通教师个人(或其他浏览者)只能按姓名来浏览个人的科研信息、进行统计打印,个人的科研信息(论文、著作、项目成果等)必须提交本部门审核入录。

2.2各院系(或部门)

各院系(或部门)主要职责是对本部门员工的论文、著作、项目、成果、奖励等信息进行审核后输入到本系统数据库中,查询本部门在某时间内的科研信息、统计科研情况、打印相关资料等,同时对本部门的错误录入信息进行修改和维护。

2.3科研处

主要管理本校的员工信息、论文、著作、各级各类科研项目和成果、科研奖励等常规工作,同时,管理校级课题的申报、审批、合同、检查、结题等管理,同时,监控系统运行和各部门的情况。

3数据库设计及关键技术实现

3.1数据库表创建

根据系统需求分析,将系统的实现直接定位在更好的适合各层次人员的需求和操作,系统的所有初始化数据均采用界面录入的方法,由各类人员分工完成。根据我校的实际情况,笔者将科研人员基本信息、论文信息、科研项目信息、成果信息、获奖情况信息等作为系统的初始化数据,为个人和院系查询、统计、打印,科研处操作、加工、管理、集成等工作提供基本的数据平台。主要数据表格设计如下:

科研人员信息表(职工号,姓名,性别,职称,出生日期,所学专业,现从事专业,学历,学位,工作时间,所在部门,备注)。

论文信息表(序号,论文名称,刊物名称,刊物类别,刊物级别,主办单位,作者,职工号,发表时间,刊号,备注)。

论著信息表(序号,著作名称,图书编号,著作类别,出版社,学科类别,作者,职工号,出版时间,版次,备注)。

科研项目表(序号,项目编号,项目名称,项目来源,项目类别,完成单位,负责人,课题组成员,立项时间,拟定期限,经费金额,是否鉴定,鉴定时间,鉴定单位,备注)。

科研成果表(序号,成果名称,成果类别,成果经费,完成时间,负责人,完成单位,是否投入生产,经济效益,备注)。

科研奖励表(序号,获奖人员,项目名称,奖励名称,授予单位,时间,备注)。

校级项目管理表(项目编号,项目名称,课题名称,负责人,所在部门,职务或职称,联系电话,申报表,申报时间,申报经费,是否批准,批准日期,批准经费,合同时间,合同内容,是否结题,结题时间,鉴定技术负责人,项目成果效益,备注)。

校级鉴定专家表(序号,姓名,性别,出生日期,工作单位,学历,学位,所学专业,现从事专业,职称职务,备注)。

在上述表格中,加下划线字段代表主键,加双划线字段代表外键。其中科研人员信息表之所以选择(职工号,姓名)作为主键,考虑到姓名经常作为查询、操作条件,并在相关表中作为科技人员的重要描述和限制;为了避免数据录入的无序状况,数据库表之间建立了严格的参照完整性,并且对所有表都分配了操作权限,并将错误信息及时反馈给操作人员,科研人员信息表、论文信息表、论著信息表通过“职工号”建立参照完整性关系,在录入论文、论著时,作者必须是本单位职工,如果科研人员信息表不存在该员工,便给出错误提示,提示检查是否是合法职工,如果是,便可以在科研人员信息表中添加该员工信息后录入论文、论著信息,否则,拒绝录入,“职工号”又为组合查询提供了连接条件支持;同时将科研项目表、科研成果表、校级项目管理表中“负责人”和科研人员信息表中的“姓名”建立主键、外键参照完整性关系,校级课题的申报负责人也必须是本单位某部门的职工;获奖人员,必须是科研人员信息表中某一职工;将校级鉴定专家表和校级项目管理表通过“鉴定技术负责人”、“姓名”建立参照完整性管理,限定了鉴定技术负责人必须是本校专家表中的专业人员;所有表的主键设置都加上“姓名”字段,目的是为了符合人们的常规习惯,常以某个专业人员姓名作为操作、查询条件,科研人员信息表与其他相关表格建立参照完整性为了限制科研、论文、论著、成果、奖励等信息的科学合法性,同时有利于统计和查询;只有完善的参照完整性,才能使得数据库中数据具有一致性和互操作性。

3.2存储过程的设计

存储过程是Transact-SQL语句的集合,它是实现事务或业务规则的极好途径,是在数据库服务器上存储与执行的。使用它,可以大大减少网络传输流量,提高应用程序性能和安全性,而且由于它只在第一次执行时被优化、编译。因此,使用存储过程不仅可以极大地降低应用程序的实现难度,而且还可以极大地提高系统的运行速度、效率。存储过程的设计一定要符合逻辑业务规则和要求,根据实际,对一些常规、频繁使用的查询、插入数据操作使用存储过程来完成。以下操作可以考虑使用存储过程来完成:

①对系统的初始化数据时录入各种基本信息操作。

②查询个人、部门科研信息时的查询操作。

③科研处的其他常规操作。

下面以查询部门科研信息为例介绍存储过程使用方法,在此查询某一部门的论文、论著信息。描述代码:

CREATEPROCEDURE论文论著

@achar(20)

as

select姓名,论文名称,刊物名称,刊物类别,刊物级别,发表时间,备注

from科研人员信息表,论文信息表

where科研人员信息表。职工号=论文信息表。职工号and所在部门=@a

select姓名,著作名称,出版社,出版时间,版次,备注

from科研人员信息表,论著信息表

where科研人员信息表。职工号=论著信息表。职工号and所在部门=@a

其它操作不再做列述。从提高执行效率、提高安全性、共享性方面考虑,尽可能多的使用存储过程来提高数据库的整体性能。

3.3触发器的使用

使用触发器来实现表间的数据自动操作,提高系统效率,校级鉴定专家表中的信息主要来源于科研人员信息表中具有副高职称以上的人员,在输入或修改科研人员信息时,只要是具有副高级职称以上的人员,就可以自动添加到校级鉴定专家表中,该操作可以使用触发器来实现,代码描述如下:

CreateTriggerptz

On科研人员信息表

Forinsert,update

As

Insertinto校级鉴定专家表(姓名,性别,出生日期,工作单位,学历,学位,所学专业,现从事专业,职称职务,备注)Select(姓名,性别,出生日期,所在部门,学历,学位,所学专业,现从事专业,职称职务,备注)。

From科研人员信息表,其中,校级鉴定专家表中的序号是自动生成的标识列。

同时,可以用触发器来检验校级项目负责人是否在科研人员信息表中,其中,用事务以验证合法性以控制该项操作是否完成。

代码描述如下:

CreateTriggercheck1

On校级项目管理表

Forinsert

As

begintran

declare@achar(12)

select@a=负责人fromInserted

If(selectcount(*)from科研人员信息表where姓名=@a)=0

begin

Print''''负责人不合法''''

rollbacktran

end

committran

其它类似操作不做描述。

在设计中,坚持使用触发器实现尽可能多的实现前台操作,不仅提高了操作效率、更提高了代码的安全性和共享性。

3.4数据库安全设计

网络的安全非常重要,从数据库级、服务器级和应用程序级综合考虑,在科研管理系统中要根据不同用户,设置不同的权限、不同的初始化菜单。在本系统中,数据库的安全主要通过数据库的存取控制机制实现的。首先定义各类管理人员的操作权限即角色,其次定义数据库登录,最后依据用户权限表将登录分配为相应的角色。由于人员的复杂性,角色分为三个层次:科研处级别、二级部门级别、普通教师级别。用户属于某一角色,即使用户职务调动时,对用户增删,不影响其他用户的操作,只是角色中用户数量的变化。建立专门的系统使用权限表来记录用户和权限,同时也兼容部门设置信息,对不同部门分配相应的权限和账号,科研处是最高管理级别部门。

为了进一步保护数据库,建立备份数据库服务器,定期进行数据库备份和复制,本系统数据库主要采用SQLServer数据库管理工具进行设计,它具有强大的管理、安全、登陆、网络支持功能,且可以和其它数据库进行转换,是一种网络数据库管理软件,符合设计要求。

4结束语

该系统数据库主要适用于C/S和B/S混合模式的数据库系统,设计中从整体考虑,建立严格的参照完整性和科学数据库结构,将存储过程、触发器应用到数据库设计中,加大了后台的功能和效率,对数据库的安全进行分级、分类设置和管理,提高了数据库的安全访问能力;它的数据冗余少,具有更高的数据一致性、可操作性和安全性,结合前台开发工具和平台,可以实现强大的功能设计和系统实现。结合本校实际已经开发了一个实用的高校科研管理系统并被科研处立项。