ImageVerifierCode 换一换
格式:DOCX , 页数:17 ,大小:143.22KB ,
资源ID:4579564      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-4579564.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(研讨班管理系统 纯数据库课设.docx)为本站会员(b****3)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

研讨班管理系统 纯数据库课设.docx

1、研讨班管理系统 纯数据库课设研讨班管理系统的设计与实现 2011年8月17日 ccut 软件学院 09级 目 录一、绪论 1二、需求分析 11 系统需求 11.1功能需求 11.2性能需求 21.3可靠性、可用性需求 21.4将来可能提出的需求 22 数据字典 22.1实体信息 22.2实体联系信息 3三、概要设计 41 研讨班管理系统E-R图 42 研讨班实体属性图 53 成绩实体属性图 54 学生基本信息实体属性图 5四、详细设计 61 数据库关系模式 62 数据库及表结构的创建 73 数据库表关系图 104 功能实现操作的T-SQL语句 10五、实现与探讨 14六、设计体会与小结 14二

2、、需求分析1 系统需求1.1功能需求每个研讨班针对一个或几个研究方向。每个研讨班由一位或几位教师主持。在研讨班开设之后,学生可以根据主持教师的姓名和研讨班的方向来选择和参加某个研讨班。所有的学生必须且只能参加一个研讨班的学习。研讨班管理系统研讨班时常会开展活动,由教师来决定活动的时间、地点、主题和做报告的学生。每次活动时,由一位或多位同学围绕活动主题做学习报告,交流自己对新技术的学习心得。录入:把学生的成绩录入到管理系统当中并保存成绩。增、删、改、查:能对录入的成绩进行操作,实现增、删、改、查的功能。成绩排序:按照学生的报告成绩排序,能输出。平均分:能计算学生成绩的品均分,能输出。信息输出:能

3、输出最高分、最低分学生的基本信息。授权:对用户进行授权。1.2性能需求实现信息管理自动化,实现自动统计功能,能长期记录学生成绩,实现管理信息化、自动化。1.3可靠性、可用性需求系统有较高的可用性,操作简单,便于用户使用,能是成绩保存,不易被乱更改。系统具有相对较高的可靠性,这样才能保障可用性,系统的数据一定要可靠,才能保证长期记录学生成绩,并且可靠的记录能方便随时能实现其增、删、改、查的功能。1.4将来可能提出的需求进一步改善系统功能具体要求如下:1、实现信息的打印功能;2、实现用户分级和不同权限操作;3、实现多客户端的数据共享和多客户端同时业务操作。2 数据字典2.1实体信息需要描述的实体和

4、从联系中抽象出的实体信息如下:1 Student_info: 学生基本信息表stu_num: 学生学号stu_name: 学生名字stu_sex: 学生性别stu_class: 班级stu_brityday: 学生生日2 Course: 研讨班方向信息表Course_id: 课程方向idCourse_name: 课程名称Course_type: 课程类型Course_teacher 该课程的老师3 Exam: 报告成绩信息表Exam_id: 成绩idStu_num: 学生学号Stu_name: 学生姓名Class: 班级Course_name: 方向名称Course_type: 课程类型Res

5、ult: 成绩Course_id: 方向IdYear: 年级2.2实体联系信息1学生基本信息:学生的基本信息存储学生的基本数据,并且与报告成绩表的学生学号建立外键关系,学号是主键,本表可实现基本的插入,删除,更新,查询基本功能。2研讨班方向:研讨班方向信息表与报告成绩表建立外键关系,由课程Id建立联系,并且course_id设为主键,教师可以通过此课程表,给报告成绩信息表上成绩记录,本表可实现基本查询课程老师信息基本功能。 3报告成绩信息:与研讨班方向信息表与学生基本信息表建立外键关系,同时可实现插入,删除,更新,查询基本功能。三、概要设计数据库在一个信息管理系统中占有非常重要的地位,数据库结

6、构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。同时,合理的数据库结构也将有利于应用系统程序的实现。在充分需求分析的基础上,经过逐步抽象,概括,分析,充分研讨,可以画出如下反映研讨班销售管理系统数据的整体E-R图.1 研讨班管理系统E-R图2 研讨班实体属性图学生基本信息表3 成绩实体属性图4 学生基本信息实体属性图四、详细设计1 数据库关系模式按照实体-联系图转化为关系模式的规则,本系统的E-R图可转化为如下有3关系模式:学生基本信息(学生学号,名字,性别,班级,学校) 研讨班方向基本信息(研讨班id, 课程方向,老

7、师)研讨班成绩基本信息(学生学号,课程方向,成绩,研讨班id) 2 数据库及表结构的创建打开SQL Servier2005,新建查询分析,根据已设计的关系模式及各模式的完整性要求,使用Transact-SQL(SQL Server中的SQL命令) 建立数据库和表结构。(1)建立数据库studentcreate database studenton ( name=student_data,filename=g:student.mdf, size=5mb, maxsize=50mb, filegrowth=10%) log on(name=student-log,filename=g:studen

8、t.log.ldf, size=5mb, maxsize=50mb, filegrowth=10% )建库结果:(2)建表学生基本信息表create table student_info(stu_num int primary key not null,stu_name varchar(50) not null,stu_sex char(2) null,stu_class varchar(50) null,stu_brityday varchar(50) null,stu_college varchar(50) null,)建表结果:(3)研讨班信息表create table course(c

9、ourse_id int primary key not null,course_name varchar(50) null,course_type varchar(10) null,course_teacher varchar(50) null,)建表结果:(5)研讨班考试成绩信息表create table exam( exam_id int primary key not null, stu_num char(10) null, stu_name varchar(50) null, class varchar(50) null, course_id varchar(10) null, co

10、urse_name varchar(50) null, course_type varchar(10) null, result float(8) null, jianyi varchar(100) null, year nchar(10) null,)建表结果:3 数据库表关系图数据库名称:student,创建3张用户表后,表间能形成如下的关系图:4 功能实现操作的T-SQL语句-创建数据库 /*create database studenton ( name=student_data,filename=g:student.mdf, size=5mb, maxsize=50mb, fileg

11、rowth=10%) log on(name=student-log,filename=g:student.log.ldf, size=5mb, maxsize=50mb, filegrowth=10%)*/-建表学生基本信息表/*create table student_info(stu_num int primary key not null,stu_name varchar(50) not null,stu_sex char(2) null,stu_class varchar(50) null,stu_brityday varchar(50) null,stu_college varch

12、ar(50) null,)*/-研讨班信息表/*create table course(course_id int primary key not null,course_name varchar(50) null,course_type varchar(10) null,course_teacher varchar(50) null,)*/-研讨班考试成绩信息表/*create table exam( exam_id int primary key not null, stu_num char(10) null, stu_name varchar(50) null, class varcha

13、r(50) null, course_id varchar(10) null, course_name varchar(50) null, course_type varchar(10) null, result float(8) null, jianyi varchar(100) null, year nchar(10) null,)*/-插入数据/*insert into student_info(stu_num,stu_name,stu_sex,stu_class,stu_brityday,stu_college)values(01,张三,男,093301,1990-4-2,长春工业大学

14、)*/ /*insert into course(course_id,course_name,course_type,course_teacher) values(11,java方向,拓展,王老师)*/ /* insert into exam(exam_id,stu_num,stu_name,class,course_id,course_name,course_type,result,jianyi )values(1,01,张三,093301,java方向,11,拓展,1,还待加强)*/- ()实现研讨班的基本情况的录入、修改、删除等基本操作。 -录入declare stu_num intde

15、clare stu_name varchar(50)declare stu_sex char(2)declare stu_class varchar(50)declare stu_brityday varchar(50)declare stu_college varchar(50)set stu_num = 20083512set stu_name = 张set stu_sex = 男set stu_class = 083305set stu_brityday = 1989-8-23set stu_college =长春工业大学insert into student_info (stu_num

16、,stu_name,stu_sex,stu_class,stu_brityday,stu_college) values(stu_num,stu_name,stu_sex,stu_class,stu_brityday,stu_college) -修改declare stu_num intdeclare stu_name varchar(50)declare stu_sex char(2)declare stu_class varchar(50)declare stu_brityday varchar(50)declare stu_college varchar(50)set stu_num =

17、 20083514set stu_name = 张set stu_sex = 女set stu_class = 083306set stu_brityday = 1989-5-23set stu_college =长春工业大学insert into student_info (stu_num,stu_name,stu_sex,stu_class,stu_brityday,stu_college) values(stu_num,stu_name,stu_sex,stu_class,stu_brityday,stu_college) -删除declare stu_name varchar(50)s

18、et stu_name = 李四delete from student_info where stu_name = stu_name select *from student_info update student_info set stu_name=刘七 where stu_name=刘六 -()按学生学号以学年分组查询全部参加研讨班信息。/*select stu_num,stu_name,course_id,course_name from exam group by stu_num,stu_name,course_id,course_name*/select * from exam wh

19、ere year=08 order by stu_num select * from exam where year=09 order by stu_num-()按学生学号计算每学年的报告学分。 select sum(result) from exam where stu_num=2-(4)由高到低排序分数 select *from exam order by result desc-()报告最高、最低成绩的学生基本信息。select stu_sex,stu_class,stu_brityday,stu_college,stu_num,stu_name from student_infowhe

20、re stu_num in (select stu_num from exam where result = 4 or result = 1) select stu_sex,stu_class,stu_num,stu_name from student_infowhere stu_num in(select max(result) from exam )select stu_sex,stu_class,stu_num,stu_name from student_infowhere stu_num in(select min(result) from exam)-()平均分select avg(

21、result) as 平均分from exam-在exam表中加入result1,result2 字段select avg(result+result1+result2)/3 as 平均分,stu_name as 姓名 from exam group by exam_id ,stu_name-(7)建立授权exec sp_addlogin chen,123goexec sp_grantdbaccess chengrant select, insert,update on exam to chen 五、实现与探讨1、设计和实现数据库过程中应当考虑实践应用需要,如果把多过程的功能的后续部分过程改为

22、触发器实现,在应用时可以将大部分软件部署在服务器端,减少客户端的负担可提高软件的效率。2、最终的软件产品一般以易操作的图形界面提交给用户,作为后台的数据库不容忽视,其好坏影响到整个软件的开发,在动手搭建数据库之前,一定要根据需求做好分析和设计,为后续工作的开展打好坚实基础。六、设计体会与小结在科学飞速发展的今天,人们的视野越来越广,数据量急剧增加。过去人们把数据存放在文件柜里,现在人们借助计算机和数据库技术科学地保存和管理大量的复杂数据,以便能方便而充分地利用这些宝贵的信息资源。数据库技术近年来迅猛发展,对于一个国家来说,数据库的建设规模、数据库信息量的大小和使用频度已成为衡量这个国家信息化程

23、度的重要标志。作为一名软件工程专业的学生,一定要把这门专业基础课学好,为今后的学习和工作打下坚实的基础,课程设计已经结束了,虽然自己的设计还存在很多不足有待改进,但是在课设过程中真的学到了很多东西,不仅使自己更加深刻的理解了平时学到的理论知识,同时也使自己的动手实践能力得到了锻炼。同时在课设过程中不断的与同学讨论,不断地向老师请教,对提高与人交往能力和团队协作能力都有帮助,真是受益良多!课程的结束并不等于学习的结束,通过课设发现了平时学习中很多没有注意到的问题,一定要尽快补上,同时深知还有很多关于数据库的知识要学,自己要走的路还很长,“路漫漫其修远兮,吾将上下而求索!”加油,努力吧!七、谢辞 一学期的课程结束了,感谢老师一直以来细致的授课,认真的批改作业,和每次对问题的耐心回答!感谢老师在课设过程中对我的悉心指导和帮助,通过这次课程设计不仅使平时的知识得到了发挥和应用,还大大提高了动手实践能力,同时是我对数据库、数据库设计和SQL都有了更进一步的了解,感谢您,在这里真诚的向您道一声“谢谢,您辛苦了!”。

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2