学分管理系统数据库的设计与实现讲解

上传人:我** 文档编号:113578693 上传时间:2019-11-09 格式:DOC 页数:17 大小:188KB
返回 下载 相关 举报
学分管理系统数据库的设计与实现讲解_第1页
第1页 / 共17页
学分管理系统数据库的设计与实现讲解_第2页
第2页 / 共17页
学分管理系统数据库的设计与实现讲解_第3页
第3页 / 共17页
学分管理系统数据库的设计与实现讲解_第4页
第4页 / 共17页
学分管理系统数据库的设计与实现讲解_第5页
第5页 / 共17页
点击查看更多>>
资源描述

《学分管理系统数据库的设计与实现讲解》由会员分享,可在线阅读,更多相关《学分管理系统数据库的设计与实现讲解(17页珍藏版)》请在金锄头文库上搜索。

1、课程设计报告 课程设计题目:学分管理系统数据库的设计与实现 专 业:班 级:姓 名:学 号:指导教师: 2014年 01月 07日16目 录1. 实验目的012. 课程设计要求013. 题目要求014. 学分管理系统的需求分析021)处理对象 022)处理功能要求 023)安全性和完整性要求 035.学分管理系统的实体关系图及ER图 031)E-R图每个实体的属性 042)将E-R图转换为关系模型 046.数据库代码生成 041)创建数据库 052)创建表 053)根据表中内容录入数据 064)创建视图 065)简单查询 066)创建触发器,保证数据一致性 077)创建存储过程,实现功能要求

2、108)判定毕业 137.实验总结158.心得体会15学分管理系统数据库的设计与实现一、实验目的:通过本次课程设计让学生能够综合运用所学的关系数据库原理知识解决并能设计一个实际问题,进一步掌握数据库原理的相关理论和数据库的设计实现过程,进一步提高学生的分析问题和解决问题的能力以及学生的动手能力。二、课程设计要求:1对各个系统进行系统功能需求分析2. 数据库设计分析阶段,进行详细的数据库需求分析,进行概念数据库的设计,画出数据库的E-R图(局部和整体E-R图)3. 设计出详细的逻辑数据库结构,将各个实体和联系转化为相应的二维表即关系模式,指定各个关系的主关键字和外部关键字,并对各个关系的约束加以

3、限定4. 通过企业管理器或是查询分析器实现各个二维关系(建议最好用SQL代码实现),要求建立相关的索引5. 根据系统功能需求设计相应的查询视图6. 要求根据系统功能需求建立存储过程7. 根据功能需求建立相应的触发器以保证数据的一致性8. 通过建立用户和权限分配实现数据库一定的安全性,考虑数据库的备份与恢复(此内容选作)三、题目要求 描述:设计一个学分管理系统。 假设每位学生必须完成基础课50学分,专业课50学分,选修课24学分,人文类课程8学分和实验性课程20学分才能毕业。 实现下列功能: 1、录入某位学生的学分信息 2、给定学号,显示某位学生的学分完成情况; 3、给定班号,显示该班所有学生的

4、学分完成情况; 4、给定学号,修改该学生的学分信息; 5、按照某类课程的学分高低进行排序; 6、给定学号,对该学生能否毕业进行确定。四学分管理系统的需求分析.通过对两个班的同学学分成绩的调查,了解到两个班的同学学分管理仍处于人工管理阶段,没有标准的学生学分存档信息。开发出合适的学生学分管理系统,可以方便学生学分的管理,提高学分管理工作的效率。1.处理对象系统要处理的对象包括学生基本信息、课程信息、教师信息三个方面,各个信息包括如下信息1) 学生基本信息:包括学生的姓名、学号、性别、系别、班级,可以方便学生信息的查询和更新;2) 课程基本信息:包括课程代号、课程名、课程种类、学分,可以方便课程信

5、息的查询与更新;3) 成绩基本信息:包括学生的学号、学生选取的课程号、学生的成绩及学分,这可以提高查询效率。2.处理功能要求系统主要完成以下几个功能:1) 录入某位学生的学分信息; 2) 给定学号,显示某位学生的学分完成情况;2) 给定班号,显示该班所有学生的学分完成情况;3) 给定学号,修改该学生的学分信息;4) 按照某类课程的学分高低进行排序;5) 给定学号,对该学生能否毕业进行确定。3.安全性和完整性要求 安全性先通过试图机制,不同的用户只能访问系统授权的视图,这样可以满足系统数据一定程度上的安全性,在通过用户授权机制,用用户登入来识别用户级,根据这个级别来分配用户权限,达到更高层次的安

6、全保密功能。 安全性要求用于描述学生基本信息、课程基本信息及教师基本信息的数据项能否为NULL,以及一些用户自定义是否符合实际要求。五、学分管理系统的实体关系图及ER图.学生课程选取学号班级性别课程名课程号学分课程类型成绩专业姓名1E-R图每个实体的属性. 学生:学号,姓名,性别,班级,专业 课程:课程号,课程名,学分,课程类型2将E-R图转换为关系模型: 学生:(sno,sname,sex,class,dept) 课程:(cno,cname,score,type) 选取:(grade)Course(课程信息表 示例)SC(学生选课情况表 示例)c_noc_namescoretypes_noc

7、_nogradescore001数据结构32专业课1120702010018032002操作系统30基础课1120702020028530003计算机网络28选修课1120702030038028004数据库32专业课1120702040049532005网络基础32专业课1120702050058032006Java语言32专业课1120702060067032007数据库实验24实验课1120702070078024008马列主义10.5人文类112070208008839009现代通信27.5选修课1120702090097024Student(学生信息表 示例)s_nos_namese

8、xclassdept112070201赵一男1120702计算机科学与技术112070202孙二女1120702计算机科学与技术112070203李三女1120702计算机科学与技术112070204赵涛男1120702计算机科学与技术112070205周四女1120702计算机科学与技术112070206吴五男1120702计算机科学与技术112070207郑六男1120702计算机科学与技术112070208王七男1120702计算机科学与技术112070209冯八男1120702计算机科学与技术六数据库代码生成1. 创建数据库CREATE DATABASE Credit -创建学分管理系

9、统数据库ON( name=Credit_data,filename=c:CreditData.mdf,size=10,maxsize=50,filegrowth=5 )2.创建表:CREATE TABLE Course -创建课程信息表( cno char(20) primary key not null,cname char(20),score float, type char(20) )create table Student -创建学生信息表( sno char(20) primary key not null, sname char(20), sex char(10), class c

10、har(20), dept char(20) )create table SC -学生选课情况表( sno char(20) not null, cno char(20) not null, grade int, score float constraint sc_prim primary key(sno,cno) )CREATE UNIQUE index SC_ind on SC(sno,cno) -创建索引3.根据表中内容录入数据:使用:insert into 表名(列名)select union select union select语句,进行多行录入4.创建视图:create view

11、 show -创建视图,提供基本查询as select sc.s_no,class,s_name,Course.c_no,c_name,sc.score,typefrom SC,Student,Coursewhere SC.s_no=Student.s_no and SC.c_no=Course.c_no 5.简单查询:select s_no,class,s_name,c_name,score,type -查询信息From showorder by class, s_noselect s_no,s_name,c_name,class,score -根据名字查询from showwhere s_

12、name=赵 涛6.创建触发器,保证数据一致性:create trigger c_insert -在Course表上创建插入触发器on Coursefor insertasselect * from showorder by s_nocreate trigger c_delete -在Course表上创建删除触发器on Coursefor deleteasdeclare oldcno varchar(20)select oldcno=c_no from deleteddelete from SC where c_no=oldcnocreate trigger c_update -在Course表上创建修改触发器on Coursefor updateasdeclare oldcno varchar(20),newcno varchar(20)if update(c_no)beginselect oldcno=c_no from deletedselect newcno=c_no from insertedupdate SC

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号