1、学号数据库系统概论课程名称课程设计汇报题目:某高校科研管理系统专业:网络工程班级:姓名:指导老师:-成绩:计算机学院12月8日目录一、 设计内容及要求11.1系统功效概述1二、 概要设计22.1系统可行性分析22.2系统需求分析32.2系统功效结构图42.3开发环境及工具4三、设计过程或程序代码53.0系统设计思想53.1数据库需求分析53.2数据库概念结构设计53.3数据字典83.4触发器设计93.5 存放过程设计103.6 视图设计12四、设计结果和分析14结 论18参考文件19附 录20一、 设计内容及要求1.1系统功效概述经过实际考察和分析,高等院校学籍管理系统包含八个模块,对应能实现
2、以下关键功效:科研人员信息管理:包含科研人员信息数据录入、修改和删除等功效。科研项目信息管理:包含科研项目信息录入、修改和删除等功效。科研论文信息管理:包含科研人员录入论文信息录入、修改和删除等功效。科研著作信息管理:包含科研人员录入著作信息录入、修改和删除等功效。获奖信息管理:包含科研人员获奖信息录入、修改和删除等功效。年度科研分计算:依据科研人员获奖给科研分,并对其进行统计。系统管理员管理:包含系统用户数据录入、修改和删除等功效。数据查询:包含科研人员信息查询和科研人员个人论文和著作查询和科研人员获奖情况查询等功效。1.2系统开发环境1.2.1开发环境选择开发和运行环境选择会影响到数据库设
3、计,本系统开发和运行环境以下: 开发环境:Windows10 企业版 l 数据库管理系统:SQLServer本系统在Windows10企业版开发环境下,并使用SQLServer作为数据库管理系统,来实现高校科研管理系统各个模块和它们功效,形成一个令多数学校满意科研管理系统。1.2.2SQLserver介绍Microsoft SQL Server 已经内置最新安全、功效更新。微软将在愚人节,即Build开发者大会期间开放SQL Server 资源下载服务。 Microsoft SQL Server 为市场带来了布署到关键数据库中新内存功效,包含内存 OLTP,它是对市场上大多数综合内存数据库处理
4、方案现有内存数据仓库和 BI 功效补充。 SQL Server 还提供新云功效,以简化 SQL 数据库对云技术采取并帮助您开创新混合方案。二、 概要设计2.1系统可行性分析2.1.1 目标可行性伴随学校规模不停扩大,学生数量急剧增加,相关学生多种信息量也成倍增加,所以对教育行业多元信息进行有效管理工作,一套现代化、自动化、智能化、人性化学生成绩管理系统可减轻了学院教务人员管理工作量,缩小开支,提升工作效率和正确率,使其变得更含有条理性,科学性。因为本系统管理对象简单,且每个数据内容之间全部含有较强关联性,包含过程并不是很复杂。所以比较适合于采取数据库管理。2.1.2 技术可行性本系统采取现在被
5、广泛使用C#开发技术、SQL Server 数据库技术和Windows Forms窗体进行开发设计,是一个用户机/服务器(C/S)模式。首先,c#是微软为.NET量身定做开发语言集合了C/C+和VB双重优点,含有简易型、灵活性、移植性强等特点,同时使用Visual Studio 作为开发平台,对于开发中小系统来说,这种开发环境是完全没有问题。其次,本系统采取SQL Server 数据库。到现在为止,SQL数据库仍然是使用最广泛一个数据库语言,所以本系统采取SQL Server ,在系统安全性、可用性和高稳定性上又有了很大提升。再次,本系统操作环境采取Windows操作系统,能够为本系统开发提供
6、良好稳定性。最终,考虑到三者兼容问题,因为三者全部属于微软企业产品,所以兼容性上不存在问题。硬件方面,采取标准服务器硬件配置,能满足本系统要求。总而言之,本系统技术可行性不存在问题。 2.1.3经济可行性完成本系统需要硬件和软件两方面支持。硬件方面需要开发服务器一台,个人电脑在此可作为服务器使用;软件方面,因为本系统属于小型管理系统,利用Visual Studio 和SQL Server 数据库开发工具即可实现。开发时间短,经济成本低。2.2系统需求分析高校科研管理所设计事务很繁杂,包含到校科研处、各个院系科研管理和个人对科研信息查询统计等。所设计系统既要有利于科研处监督管理又要有利于各个系及
7、老师分工协作。系统功效关键包含校科研处科研管理、院系(或部门)科研管理、个人科研信息查询、校级科研项目整体信息管理。能够划分为科研信息维护、科研信息查询和统计、科研信息报表、科研信息分析、校级课题申报、审批、结题、其它处理等操作;其中科研信息应细分为学术论文、科研项目、科研结果、科研奖励等信息。因为本系统是直接面向网上办公,必需适应所服务环境各类操作人员,关键包含学校科研处、各院系(或部门)、一般老师个人(或其它浏览者)。一般老师个人(或其它浏览者)一般老师个人(或其它浏览者)只能按姓名来浏览个人科研信息、进行统计打印,个人科研信息(论文、著作、项目结果等)必需提交本部门审核入录。各院系(或部
8、门)各院系(或部门)关键职责是对本部门职员论文、科研项目、科研结果、奖励等信息进行审核后输入到本系统数据库中,查询本部门在某时间内科研信息、统计科研情况、打印相关资料等,同时对本部门错误录入信息进行修改和维护。科研处关键管理本校职员信息、论文、各级各类科研项目和结果、科研奖励等常规工作,同时,管理校级课题申报、审批、结题等管理,同时,监控系统运行和各部门情况。2.2系统功效结构图高校科研管理系统部门老师科研计划系部职称职务部门号部门名老师编号老师姓名职务老师编号职称老师姓名系部号系部名部门名老师编号老师性别老师姓名系部号科研编号系部号老师编号老师姓名是否申报审批管理验收标志完成数量图2.2系统
9、功效结构图2.3开发环境及工具本系统开发时所使用相关开发环境和工具以下:o 操作系统:Microsoft Windows10 企业版o 数据库:Microsoft SQL Server o 绘图软件:Microsoft Visio 三、设计过程或程序代码3.0系统设计思想伴随网络日益普遍化,网络安全将显得很关键,从数据库级、服务器级和应用程序级综合考虑,在科研管理系统中要依据不一样用户,设置不一样权限、不一样初始化菜单。在本系统中,数据库安全关键经过数据库存取控制机制实现。首先定义各类管理人员操作权限即角色,其次定义数据库登录,最终依据用户权限表将登录分配为对应角色。3.1数据库需求分析经过实
10、际考察和分析,高等院校学籍管理系统包含八个模块,对应能实现以下关键功效:科研人员信息管理:包含科研人员信息数据录入、修改和删除等功效。科研项目信息管理:包含科研项目信息录入、修改和删除等功效。科研论文信息管理:包含科研人员录入论文信息录入、修改和删除等功效。科研著作信息管理:包含科研人员录入著作信息录入、修改和删除等功效。获奖信息管理:包含科研人员获奖信息录入、修改和删除等功效。年度科研分计算:依据科研人员获奖给科研分,并对其进行统计。系统管理员管理:包含系统用户数据录入、修改和删除等功效。数据查询:包含科研人员信息查询和科研人员个人论文和著作查询和科研人员获奖情况查询等功效。3.2数据库概念
11、结构设计概念结构设计阶段是整个数据库设计关键,它经过对用户需求进行综合、归纳和抽象,形成一个独立于具体概念模型。依据数据库需求分析结果,就能够确定程序中所包含实体及实体间关系,作为数据库逻辑结构设计基础和指导。依据本系统需要,能够归纳出以下实体:部门、职务、职称、系部和科研项目。各实体间E-R图以下所表示。部门E-R图图3.1(1)所表示:部门部门名部门号部门E-R图3.1(1)关键实体E-R图图3.2(2)所表示系部号部门部门号部门名系部部门老师编号系部名老师姓名职称老师验收标志审批管理参与完成数量职称科研编号科研项目老师编号职务是否申报系部号职务老师姓名老师姓名老师编号关键实体E-R图图3
12、.2(2)职务E-R图图3.3(3)所表示:职务职务老师姓名老师编号职务E-R图图3.3(3)3.3数据字典department字段名数据类型长度是否为Null是否主属性DeptNoInt NoYesDeptNamechar20NoNoFaculty字段名数据类型长度是否为Null是否主属性DeptNumberIntNoYesDeptNoIntNoNoFacultyNameChar 20NoNoTeacher字段名数据类型长度是否为Null是否主属性TeacherNumberInt NoYesTitleNumberchar20NoNoTeacherNametextNoNoSexChar 20N
13、oNoContactNumberChar14NoNoInFacultyNumberInt NoNoEmployee字段名数据类型长度是否为Null是否主属性TeacherNumberInt NoNoTeacherNameChar 20No NopostChar 20NoNoTitle字段名数据类型长度是否为Null是否主属性TeacherNumberInt NoNoTeacherNameChar20NoNoTitleNameChar20NoNoProject字段名数据类型长度是否为Null是否主属性ProjectNumberInt NoYesDeptNumberInt NoNoTeacharN
14、umberInt NoNoTeacherNameChar 20NoNoReportchar2NoNoapprovalChar 20NoNoCheckingChar 20NoNoProjectAmountInt No3.4触发器设计3.4.1科研计划表添加科研统计时,修改其验收状态为“未验收” create trigger dbo.tgr_project_insert on project for insert -插入触发 as update project set Checking=未验收创建成功,图3.4.1所表示: 图3.4.1 科研计划表修改触发器3.4.2科研计划表验收项目时自动修改项
15、目标验收标志为“验收经过”create trigger dbo.tgr_project_insert_mark on project for update as begin if update(Checking) update project set Checking=验收经过 end 创建成功,图3.4.2所表示: 图3.4.2 科研计划表修改触发器3.4.3部门表严禁修改部门表中“部门名”“部门号”等关键字段create trigger dbo.update_department on department for update as if(update(DeptNo)or update(
16、DeptName) begin print你想作甚,基础数据不能修改! rollback transaction end else print修改成功 select *from department 创建成功,图3.4.3所表示: 图3.4.3科研计划表修改触发器3.5 存放过程设计存放过程是SQL语句和可选控制流语句预编译集合,以一个名称存放并作为一个单元处理。存放过程存放在数据库内,可由应用程序经过一个调用实施。它有以下优点:(1)许可模块化程序设计。存放过程一旦创建,以后即可在程序中调用任意数次(2)能够降低网络通信流量,一个需要数百行Transact-SQL代码操作能够经过一条实施过程
17、代码语句实施,而不需要在网络中发送数百行代码。(3)许可愈加快实施。存放过程只在第一次实施时需要编译且被存放在存放器中,其它次实施无须由数据引擎再编译,提升了实施速度。(4)可作为安全机制使用。即时对于没有直接实施存放过程中语句权限用户,也可授予她们实施该存放过程权限。由上可知,存放过程含有独特便利性,所以依据该系统功效要求,设计了以下存放过程。3.5.1添加部门管理存放过程create procedure dbo.insert_department( DeptNo int, -部门号 DeptName char(50) -部门名 )asinsert into dbo.department v
18、alues(DeptNo,DeptName)创建成功,图3.5.1所表示: 图3.5.1 部门管理存放过程3.5.2 删除部门管理存放过程create procedure dbo.delete_department( DeptNo int -部门号)as delete from dbo.department where DeptNo = DeptNo- 添加老师信息表存放过程 create procedure dbo.insert_teacher (TeacherNumber int,-老师编号 TitleNumber char (10), -职称编号 TeacherName text, -姓
19、名 Sex char (10), -性别 ContactNumber char (10), -联络电话 InFacultyNumber int-所属院系编号 ) as insert into dbo.teacher values ( TeacherNumber,TitleNumber,TeacherName,Sex,ContactNumber,InFacultyNumber )创建成功,图3.5.2所表示:图3.5.2添加老师信息表存放过程-删除老师信息表存放过程create procedure dbo.delete_teacher ( TeacherNumber int -老师编号 ) as
20、 delete from teacher where TeacherNumber=TeacherNumber execute dbo.delete_teacher TeacherNumber=10 -科研项目存放过程 create procedure dbo.insert_project ( ProjectNumber int ,-科研编号DeptNumber int, -系部号TeacherNumber int ,-老师编号TeacherName char (12), -老师姓名Report char (12),-是否申报approval char (12),-审批管理Checking ch
21、ar (12), -验收标致ProjectAmount int -科研数量)asinsert intodbo.insert_projectvalues( ProjectNumber,DeptNumber,TeacherNumber,TeacherName,Report,approval,Checking,ProjectAmount)创建成功,图3.5.3所表示:图3.5.3添加科研项目存放过程3.6 视图设计 删除科研项目存放过程 create procedure dbo.delete_project ( TeacherNumber int -老师编号 ) as delete from pro
22、ject where TeacherNumber=TeacherNumber go execute dbo.delete_project 9 科研项目查询 create procedure dbo.check_project (TeacherNumber int )asselectProjectNumber,DeptNumber,TeacherNumber,TeacherName,Report,approval,Checking,ProjectAmountfrom dbo.projectwhere TeacherNumber=TeacherNumber查询成功图3.5.4所表示:图3.5.4查
23、询结果3.6.1创建老师表视图 create view view_teacher as select TeacherName,ContactNumber from teacher创建成功,图3.6.1所表示: 图3.6.1 查询职务视图3.6.2查询老师视图 create view view_project as select * from project创建成功,图3.6.2所表示: 图3.6.2 查询老师视图四、设计结果和分析1、创建触发器,添加科研统计时,修改其验收状态为“未验收”;2、创建触发器,验收项目时自动修改项目标验收标志为“验收经过”;3-创建触发器,严禁修改departmen
24、t表中“部门号”“部门名”等关键字段。(1) -创建存放过程插入一条信息到部门管理(2) -创建存放过程删除一条信息到部门管理(3) -创建存放过程插入一条信息到老师信息管理 (4) -创建存放过程插入一条信息到科研项目申报管理(4)-创建存放过程,统计各院系科研项目标申报和完成数量;1、创建老师联络电话视图 2、创建科研表视图结 论 此次课程设计题目是:高校科研管理系统该系统功效贯穿了科研管理全过程,使高校科研管理工作能够快速、方便、正确、安全得以实现。经过课时学习努力,这个系统总算完成了。因为知识能力和时间欠缺,我们小组初步实现了部分基础管理系统功效,尽管它是一个半成品,系统还有很多不尽如
25、人意地方,存在很多不足,有待改善。但它是我们小组独立完成一个项目设计。经过这次课程设计,我们了解了科研项目标大致步骤,熟悉数据库使用,使我得到不少提升。在存放器开发中,我认为是最关键和最困难部分,知识欠缺造成了对项目设计修修补补,在老师帮助下,这些问题基础得已处理,也衷心感谢老师指导。参考文件1苗雪兰,宋歌,刘瑞新等.数据库系统原理及应用教程M.机械工业出版社.2冯建华,周主柱,宋歌,等.数据库系统设计和原理M.清华大学出版社.3萨师煊,王珊.数据库系统概论(第五版)M.北京:高等教育出版社.4李德奇.ASP.NET程序设计M.人民邮电出版社明日科技.5萨师煊,王珊数据库系统概论M北京:高等教
26、育出版社,附 录(这里给出建立数据库和数据表SQL代码,假如有前台设计,合适粘贴关键部分设计代码)Create DataBase USRMS -University scientific research management systemUse USRMS create table department(-部门表 DeptNo int constraint pk_bmh primary key, -部门号 DeptName char(80) not null -部门名字 )create table faculty( -系信息 DeptNumber int Not Null primary k
27、ey,-系部号 DeptNo int Not Null,-部门号 FacultyName char (20) Not Null-院系名称) create table teacher( -老师信息表 TeacherNumber int Not Null primary key, -老师编号 TitleNumber char (20) Not Null, -职称编号 postNo char (20) Not Null, -职务编号 TeacherName text Not Null, -姓名 Sex char (20) Not Null, -性别 ContactNumber char (20) N
28、ot Null, -联络电话 InFacultyNumber int Not Null -所属院系编号 ) create table Employee( -职务表 postNo char (20) Not Null,-职务编号 post char (20) Not Null -职务 ) create table Title( -职称表 TitleNumber char(20) Not Null,-职称编号 TitleName char (20) Not Null-职务名称 ) create table project( -科研计划表 ProjectNumber int Not Null pri
29、mary key,-科研编号 TeacherName char (12) Not Null,-老师姓名 approval char (12) Not Null,-审批状态 Checking char (12) Not Null,-验收状态 add_time datatime Not Null, -申请时间, 新起个名称 datatime Not Null, -审批时间, 新起个名称 datatime Not Null, -验收时间, ) insert department values(01,Stanford University ) insert department values(02,H
30、arvard University ) insert department values(03,Yale University ) insert department values(04,Columbia University) insert faculty values(01,01,计算机) insert facultyvalues(02,01,电气工程) insert facultyvalues(03,02,冶金)insert facultyvalues(04,02,化学) insert facultyvalues(05,03,计算数学)insert faculty values(06,0
31、3,应用数学)insert faculty values(07,04,物流管理) insert faculty values(08,04,财务管理) insert teacher values(01,01,于立宏,男,001,01)insert teacher values(02,02,张秀凤,女,002,01) insert teacher values(03,03,姜历历,男,003,02)insert teacher values(04,04,王晓慧,女,004,02) insert teacher values(05,05,张丽珍,女,005,03)insert teacher val
32、ues(06,06,乐其奇,女,006,03) insert teacher values(07,07,郭彬滨,男,007,04) insert teacher values(08,08,关龙马,男,008,04) insert Employee values(01,于立宏,国家级教练)insert Employee values(02,张秀凤,高级关务监督 ) insert Employee values(03,姜历历,高级工艺美术师) insert Employee values(04,王晓慧,编审 )insert Employee values(05,张丽珍,一级律师) insert E
33、mployee values(06,乐其奇,译审) insert Employee values(07,郭彬滨,高级工程师) insert Employee values(08,关龙马,研究员) insert Title values(01,于立宏,教授) insert Title values(02,张秀凤,博士)insert Title values(03,姜历历,硕士)insert Title values(04,王晓慧,副教授) insert Title values(05,张丽珍,助教) insert Title values(06,乐其奇,教授) insert Title valu
34、es(07,郭彬滨,博士) insert Title values(08,关龙马,讲师) insert project values(01,01,01,于立宏,是,已审批,未验收,1) insert project values(02,02,02,张秀凤,是,未审批,验收,3) insert project values(03,03,03,姜历历,是,已审批,未收,5) insert project values(04,04,04,王晓慧,是,已审批,验收,7) insert project values(05,05,05,张丽珍,是,未审批,未验收,2)insert project valu
35、es(06,06,06,乐其奇,是,已审批,验收,4) insert project values(07,07,07,郭彬滨,是,未审批,未验收,6) insert project values(08,08,08,关龙马,是,已审批,验收,8)select * from Employee -职员职务表select * from Title -职员职称select * from project -科研计划表select * from teacher -老师信息表select * from faculty - 系部门select * from department -部门表-建立数据库相关表之间参
36、考完整性约束。Alter table faculty Add constraint KY_facult_DeptForeign key (DeptNo)references department (DeptNo) Alter table teacher Add constraint KY_teacher_DeptForeign key (InFacultyNumber) references department(DeptNo) Alter table EmployeeAdd constraint KY_Employee_teacher Foreign key (TeacherNumber)r
37、eferences teacher(TeacherNumber) Alter table TitleAdd constraint KY_Title_teacher Foreign key (TeacherNumber)references teacher(TeacherNumber) Alter table project Add constraint KY_project_teacherForeign key (TeacherNumber)references teacher(TeacherNumber) Alter table project Add constraint KY_proje
38、ct_DeptForeign key (DeptNumber)references faculty(DeptNumber)- 添加部门存放过程create procedure dbo.insert_department( DeptNo int, -部门号 DeptName char(40) -部门名 )asinsert into dbo.department values(DeptNo,DeptName)goexecute dbo.insert_department 9,Berklee College of Musicselect *from department where DeptNo=9
39、- 删除部门create procedure dbo.delete_department( DeptNo int -部门号)as delete from dbo.department where DeptNo = DeptNogoexecute dbo.delete_department 9select *from department where DeptNo=9 - 添加老师信息表存放过程 create procedure dbo.insert_teacher (TeacherNumber int,-老师编号 TitleNumber char (10), -职称编号 TeacherName text, -姓名 Sex char (10), -性别 ContactNumber char (10), -联络电话 InFacultyNumber int-所属院系编号 ) as insert into dbo.teacher values ( TeacherNumber,TitleNumber,TeacherName,Sex,ContactNumber,InFacultyNumber ) go executedbo.insert_teacher 14,14,俄洛伊,女,4 executedbo.insert_teacher 10,10,孙
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100