资源描述
题目:(10)某高校科研管理系统 1 问题的描述l 实现部门、职务、职称等基本信息的管理;l 实现教师信息的管理;l 实现可以科研项目的申报、审批管理;l 实现科研项目的验收管理;l 创建默认,并邦定到科研项目的验收标志,使其默认值为“未验收”;l 创建触发器,验收项目时自动修改项目的验收标志为“验收通过”;l 创建存储过程统计个院系科研项目的申报和完成数量;l 建立数据库相关表之间的参照完整性约束。2需求分析2.1 需求分析使用T-SQL语句创建出与题目相对应的数据库,在数据库中创建表格,添加数据,建立数据库相关表之间的参照完整性约束,创建默认、触发器、存储过程查询并将其与数据库中的表进行绑定。2.2 系统功能结构(1) 实现对科研常规事务的管理(2) 实现科研课题的申请、审批、验收的管理(3) 可以完成对校内各种科研信息的查询、统计2.3 数据流图教师教师科研管理系统 选取科研 管理内容 图1-1 科研管理系统的顶层数据流图科研项目 项目情况P1登记管理 教师D1 项目信息XIANGMUXINXI 教师情况部门 部门情况系部 系部情况P2审核操作科研人员 科研人情况科研人员P3查询统计 查询统计信息教师 查询信息部门D1 项目信息系部 图1-2 系统数据流图 3逻辑结构设计31 局部E-R图部门号部门名部门 1包含 n系部号系部名系部 1包含教师编号教师编号教师姓名 n教师姓名 拥有拥有职称职务教师教师姓名 1 1 1 1职称系部号教师编号职务 m选取、完成完成数量科研编号验收标志系部号 n科研计划审批管理是否申报教师姓名教师编号32 全局E-R图科研教师编号完成数量系部号验收标志研究科研编号审批管理教师是否申报33 数据字典部门表字段名数据类型长度是否NULL是否主属性部门号int2否是部门名char12否否系部表字段名数据类型长度是否NULL是否主属性部门号int2否否系部号char12否是系部名char12否否教师表字段名数据类型长度是否NULL是否主属性系部号int2否否教师编号int2否是教师姓名char12否否职务表字段名数据类型长度是否NULL是否主属性教师编号int2否否教师姓名char12否否职务char12否否 职称表字段名数据类型长度是否NULL是否主属性教师编号int2否否教师姓名char12否否职称char12否否科研计划表字段名数据类型长度是否NULL是否主属性科研编号int2否是系部号int2否否教师编号int2否否教师姓名char12否否是否申报char2否否审批管理char12否否验收标志char12否否完成数量int2否否4 数据库实现数据库创建create database gxkyon primary(name=gxky_data,Filename=E:datagxky_data.mdf,Size=5mb,Maxsize=20mb,Filegrowth=20%) Log on(name=gxky_log,Filename=E:datagxky_log.ldf,Size=10mb,Filegrowth=2mb)Collate chinese_prc_ci_asGO各个表的创建Create table 部门(部门号 int constraint pk_bmh primary key,部门名 char(12) not null,)Create table 系部(系部号 int constraint pk_xbh primary key,部门号 int not null,系部名 char(12) not null)Create table 教师(教师编号 int constraint pk_js primary key,系部号 int not null,教师姓名 char(12) not null)Create table 职务(教师编号 int not null,教师姓名 char(12) not null,职务 char(12) not null)Create table 职称(教师编号 int not null,教师姓名 char(12) not null,职称 char(12) not null)Create table 科研计划(科研编号 int constraint pk_kybh primary key,系部号 int not null,教师编号 int not null,教师姓名 char(12) not null,是否申报 char(2) not null,审批管理 char(12) not null,验收标志 char(12) not null,完成数量 int not null)建立数据库相关表之间的参照完整性约束。Alter table 系部Add constraint fk_xibu_bumenForeign key (部门号) references 部门(部门号)Alter table 教师Add constraint fk_js_xibuForeign key (系部号) references 系部(系部号)Alter table 职务Add constraint fk_zw_jsForeign key (教师编号) references 教师(教师编号)Alter table 职称Add constraint fk_zc_jsForeign key (教师编号) references 教师(教师编号)Alter table 科研计划Add constraint fk_kyjh1_jsForeign key (教师编号) references 教师(教师编号)Alter table 科研计划Add constraint fk_kyjh2_xbForeign key (系部号) references 系部(系部号)向表中插入数据insert 部门 values(01,工学院)insert 部门 values(02,理学院)insert 部门 values(03,数学学院)insert 部门 values(04,商学院)insert 系部 values(01,01,计算机)insert 系部 values(02,01,电气工程)insert 系部 values(03,02,冶金)insert 系部 values(04,02,化学)insert 系部 values(05,03,计算数学)insert 系部 values(06,03,应用数学)insert 系部 values(07,04,物流管理)insert 系部 values(08,04,财务管理)insert 教师 values(01,01,张三)insert 教师 values(02,02,李四)insert 教师 values(03,03,王五)insert 教师 values(04,04,小马)insert 教师 values(05,05,小东)insert 教师 values(06,06,小红)insert 教师 values(07,07,小明)insert 教师 values(08,08,小赵)insert 职务 values(01,张三,查资料)insert 职务 values(02,李四,整理资料)insert 职务 values(03,王五,动手实践)insert 职务 values(04,小马,记录数据)insert 职务 values(05,小东,观察现象)insert 职务 values(06,小红,分析问题)insert 职务 values(07,小明,纠正错误)insert 职务 values(08,小赵,汇总)insert 职称 values(01,张三,教授)insert 职称 values(02,李四,博士)insert 职称 values(03,王五,研究生)insert 职称 values(04,小马,副教授)insert 职称 values(05,小东,助教)insert 职称 values(06,小红,讲师)insert 职称 values(07,小明,博士)insert 职称 values(08,小赵,教授)insert 科研计划 values(01,01,01,张三,是,已审批,验收,5)insert 科研计划 values(02,02,02,李四,是,未审批,未验收,1)insert 科研计划 values(03,03,03,王五,是,已审批,验收,3)insert 科研计划 values(04,04,04,小马,是,已审批,验收,3)insert 科研计划 values(05,05,05,小东,是,未审批,未验收,6)insert 科研计划 values(06,06,06,小红,是,已审批,验收,8)insert 科研计划 values(07,07,07,小明,是,未审批,未验收,2)insert 科研计划 values(08,08,08,小赵,是,已审批,未验收,4)创建默认,并邦定到科研项目的验收标志,使其默认值为“未验收”Alter table 科研计划Add constraint df_ysbzDefault 未验收for 验收标志创建触发器,验收项目时自动修改项目的验收标志为“验收通过”Create trigger up_ysbzOn 科研计划For updateAsBeginIf update(验收标志)Update 科研计划 set 验收标志=验收通过end创建存储过程统计个院系科研项目的申报和完成数量create proc up_sbwcsl(xbh int)ASbeginselect 科研计划.系部号,是否申报,完成数量 from 科研计划Where 科研计划.系部号=xbh and 是否申报=是end插入数据后各个表的情况5结束语(结论)通过这次课程设计让我收获很大,这次课程设计让我把以前学习到的知识得到巩固和进一步的提高认识,对已有知识有了更进一步的理解和认识,在课程设计中碰到了很多的问题,通过查阅相关书籍,资料,通过自己钻研,向同学请教。这次课程设计让我认识到了自己对以前所学知识的不足方面,我会继续学习更多的知识。但是,我的学习仍有不足之处,我会继续努力。这次课程设计让我意识到我们开发系统所用到的知识,并不是单靠掌握一两门开发工具就能做好的,需要用到更多的基础知识。这就需要我们在未来的路上继续学习新的知识,并把它变为自己的东西,这也正是学习的精髓所在。
展开阅读全文