数据库课程设计实验选课系统.docx

上传人:b****3 文档编号:5557789 上传时间:2023-05-08 格式:DOCX 页数:23 大小:310.77KB
下载 相关 举报
数据库课程设计实验选课系统.docx_第1页
第1页 / 共23页
数据库课程设计实验选课系统.docx_第2页
第2页 / 共23页
数据库课程设计实验选课系统.docx_第3页
第3页 / 共23页
数据库课程设计实验选课系统.docx_第4页
第4页 / 共23页
数据库课程设计实验选课系统.docx_第5页
第5页 / 共23页
数据库课程设计实验选课系统.docx_第6页
第6页 / 共23页
数据库课程设计实验选课系统.docx_第7页
第7页 / 共23页
数据库课程设计实验选课系统.docx_第8页
第8页 / 共23页
数据库课程设计实验选课系统.docx_第9页
第9页 / 共23页
数据库课程设计实验选课系统.docx_第10页
第10页 / 共23页
数据库课程设计实验选课系统.docx_第11页
第11页 / 共23页
数据库课程设计实验选课系统.docx_第12页
第12页 / 共23页
数据库课程设计实验选课系统.docx_第13页
第13页 / 共23页
数据库课程设计实验选课系统.docx_第14页
第14页 / 共23页
数据库课程设计实验选课系统.docx_第15页
第15页 / 共23页
数据库课程设计实验选课系统.docx_第16页
第16页 / 共23页
数据库课程设计实验选课系统.docx_第17页
第17页 / 共23页
数据库课程设计实验选课系统.docx_第18页
第18页 / 共23页
数据库课程设计实验选课系统.docx_第19页
第19页 / 共23页
数据库课程设计实验选课系统.docx_第20页
第20页 / 共23页
亲,该文档总共23页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

数据库课程设计实验选课系统.docx

《数据库课程设计实验选课系统.docx》由会员分享,可在线阅读,更多相关《数据库课程设计实验选课系统.docx(23页珍藏版)》请在冰点文库上搜索。

数据库课程设计实验选课系统.docx

数据库课程设计实验选课系统

重庆科技学院电子信息工程学院课程设计任务书

2008—2009学年第一学期

专业

计算机科学与技术

班级

计科普、计科应2006

课程名称

数据库原理

课程类别

1

(1.必修2.公选3.限选4.专选)

设计时间

从2008年12月15日至2008年12月26日

一、课程设计题目:

实验选课系统

二、课程设计要求:

按照数据库系统开发步骤进行数据库概念结构设计、逻辑结构设计、物理结构设计,使学生掌握数据库应用软件的开发流程,SQL语句的使用和存储过程的使用。

三、设计任务概述:

学生根据本课程设计指导书中的题目,进行设计。

1.根据需求分析,画出数据流图,写出数据字典,功能模块分析

2.根据前阶段结果,画出E-R图,并对实体做进一步描述

3.按照规则,将E-R图转换为关系模型

4.将关系模型转换为物理模型

5.通过存储过程完成系统基本功能,实现数据的测试

四、工作计划及安排:

16.1讲课阅读分析任务书制订设计计划

16.2-3需求分析概念结构设计

16.4-5概念结构设计准备文挡

17.1-3逻辑结构设计物理结构设计

17.4-5写文挡答辩交设计报告书

五、考核及成绩评定方式:

考勤20%设计成果60%(其中存储过程30%)答辩20%

指导

教师

签字

 

年月日

教研室

审核

意见

教研室主任(签字):

年月日

注:

表格空间不够可自行调整。

摘要

随着高等教育的不断深入,大学实行选课制度是非常有必要的,这样可以根据学生的兴趣,自行选择自己喜欢的课程。

本系统就是为了适应新形势下的高校教育而开发的大学生选课。

通过集成从学生选课、学校开选修课、教师考勤、授课、上成绩等一系列功能,每个环节明确分工,并通过后台数据库支持,有效减小了人为因素造成的差错,从而高效、便捷、准确的为学生和老师服务,使学生选课和老师授课都变的方便快捷。

本系统由三类用户组成,学生,教师和管理员。

学生的功能包括选课,查寻实验信息等,教师的功能包括考勤,学生实验成绩录入,查寻实验信息等。

管理员的功能包括新建教师,学生账户,设定实验课程信息(设定实验时间,地点,任课教师)。

管理员可对教师,学生及实验课程信息进行修改;教师可对任课的考勤,成绩进行修改;学生可以对自己选修的课程重选,退选。

管理员可删除教师,学生及实验课程信息。

教师可查询所任课程的学生名单,实验时间,考勤及实验成绩,并可按成绩分数段进行统计;学生可查寻所学课程的实验时间,教师名单;管理员具有全系统的查寻功能。

通过SQL数据库作为后台,完成这一系列的操作。

关键字:

选课系统数据库

 

1需求分析

1.1系统功能要求与分析

1.1.1系统功能要求分析

实验选课系统分为教师,学生及系统管理员三类用户,学生的功能包括选课,查寻实验信息等,教师的功能包括考勤,学生实验成绩录入,查寻实验信息等。

管理员的功能包括新建教师,学生账户,设定实验课程信息(设定实验时间,地点,任课教师)。

管理员可对教师,学生及实验课程信息进行修改;教师可对任课的考勤,成绩进行修改;学生可以对自己选修的课程重选,退选。

管理员可删除教师,学生及实验课程信息。

教师可查询所任课程的学生名单,实验时间,考勤及实验成绩,并可按成绩分数段进行统计;学生可查寻所学课程的实验时间,教师名单;管理员具有全系统的查寻功能。

数据库要求:

在数据库中至少应该包含下列数据表:

教师,学生信息表:

名字,密码等;

课程信息表,课程名,学时等;

实验室信息表;

课程选修信息表,谁选了什么课程,谁任课,什么时间,地点;

1.1.2设计环境

基于WINDOWSxp操作系统,利用PowerDesigner作为设计工具,使用SQL2000和2005为数据库管理工具。

在PowerDesigner中建立的概念模型生成物理模型,在通过ODBC连接到数据库中,建立关系图。

1.2数据字典

1.2.1数据结构

根据课程设计任务书的要求,经需求分析,需用到六个表,分别为学生表,教师表,管理员表,学生可选总课表,授课地点表,试验信息表。

详细属性及其主码如表1.1所示,其中加下划线的问该表的主码。

表1.1

编号

数据结构名

属性

1

学生

学号,学生姓名,性别,年龄,专业,年级,学生密码

2

教师

教师号,授课教师,性别,所属系,教师密码

3

管理员

管理员号,管理员名,性别,管理员密码

4

学生可选总课表

课程号,课程名,学分

5

授课地点

课程名,授课时间,授课教师,授课地点

6

实验室信息

实验室号,实验室容量

下面是本系统所需要的六个基本表。

1.学生表Student

表1.2

字段

中文

数据类型

描述

允许空

Sno

学号

Char(10)

用户信息表的唯一标识

No

Sname

学生姓名

Varchar(10)

No

Ssex

性别

Char

(2)

No

Sage

年龄

Char

(2)

No

Sdept

专业

LongChar(10)

No

Sgrade

年级

Char(10)

Spassword

学生密码

LongVarchar(20)

登陆实验选课系统的密码

No

 

2.教师表Teacher

表1.3

字段

中文

数据类型

描述

允许空

Tno

教师号

Char(10)

用户信息表的唯一标示

No

Tname

授课教师

Char(10)

No

Tsex

性别

Char

(2)

No

Tdept

所在院系

LongVarchar(40)

No

Tpassword

教师密码

LongVarchar(20)

登录试验选课系统的密码

No

 

3.管理员表Administartor

表1.4

字段

中文

数据类型

描述

允许空

Ano

管理员号

Char(10)

No

Aname

管理员名

Varchar(10)

No

Asex

性别

char

(2)

No

Password

管理员密码

Varchar(20)

登录实验选课系统的密码

No

4.学生可选总课程表Course

表1.5

字段

中文

数据类型

描述

允许空

Cno

课程号

Int(10)

主码

No

Cname

课程名

LongVarchar(40)

No

Ccredit

学分

Float(10)

No

5.授课地点表Caddress

表1.6

字段

中文

数据类型

描述

允许空

Cno

课程名

LongVarchar(40)

No

Tname

授课教师

char(10)

No

Caddress

授课地点

char(10)

主码

No

Ctime

授课时间

char(10)

主码

No

6.实验室信息Lib

表1.7

字段

中文

数据类型

描述

允许空

Lno

实验室号

char(10)

主码

No

Lrongliang

实验室容量

char(4)

No

1.2.2数据流

根据用户需求分析,由学生,管理员和教师等基本表之间的关系,总结出本系统所需要的数据流,如表1.2所示。

表1.8

编号

数据流名

输入

输出

1

管理员开课信息

课程

新课程表

2

学生选课信息

选课

课程表

3

选课学生信息

学生学号

学生信息

4

实验室信息

实验室号

实验室容量,空余

5

管理信息

管理员号,密码

删除修改注册学生,教师信息

6

成绩信息

教师号,密码

学生成绩

7

教师考勤信息

教师号

教师考勤信息

1.2.3数据项

由数据结构在PowerDisgner中画出基本表,将表与表之间通过它们之间的关系联系起来,生成了数据项如表1.2。

表1.9

名称

代码

数据类型

长度

专业

Sdept

LA40

40

学分

Ccredit

A2

2

学号

Sno

A10

10

学生姓名

Sname

VA10

10

学生密码

Spassword

LVA20

20

实验室号

Lno

A10

10

实验室容量

Lrongliang

A4

4

年级

Sgrade

A10

10

年龄

Sage

A2

2

性别

Asex

A2

2

性别

Tsex

A2

2

性别

Ssex

A2

2

所属系

Tdept

LVA40

40

授课地点

Caddress

A10

10

授课教师

Tname

A10

10

授课时间

Ctime

A10

10

教师号

Tno

A10

10

教师密码

Tpassword

LVA20

20

管理员号

Ano

A10

10

管理员名

Aname

VA10

10

管理员密码

Apassword

LVA20

20

课程号

Cno

A10

10

课程名

Cname

LVA40

40

2概念结构设计

2.1概念结构图

分析本系统的需求,找出各个基本表之间的联系,通过PowerDisgner画出概念结构图。

如下图2.1。

图2.1

2.2E-R图

根据用户需求和数据结构画出本系统的E-R图。

图2.2

3逻辑结构设计

概念结构是独立于任何一种数据模型的信息结构。

逻辑结构设计的任务就是把概念结构设计阶段设计好的基本E-R图转换为数据库管理系统所支持的数据模型符合的逻辑结构。

3.1E-R图向关系模型转换

实体所对应的关系模式。

学生

(学号,学生姓名,性别,年龄,专业,年级,学生密码)

教师

(教师号,授课教师,性别,所属系,教师密码)

管理员

(管理员号,管理员名,性别,管理员密码)

学生可选总课表

(课程号,课程名,学分)

授课地点

(课程名,授课时间,授课教师,授课地点)

实验室信息

(实验室号,实验室容量)

学生表和学生可选总课表之间选课数对应的“选课”关系模式。

图3.1

教师和学生“教学”关系模式。

图3.2

3.2关系模式

在PowerDesigner中建立好概念模型后,可以利用该软件自带的功能将其转换成物理模型,物理模型连接数据库生成所对应的表,然后利用SQL2000生成关系图,如图3.3。

图3.3

4物理结构设计

概念模型转换为物理模型

图4.1

5数据库的实施

5.1导入数据库

5.1.1创建数据源

通过建立ODBC数据源,将PowerDesigner中的基本表和关系模型导入到数据库中,进行视图,存储的操作。

建立ODBC数据源。

图5.1

Class是我在数据库里创建的新的数据库。

图5.2

ODBC数据源连接成功。

图5.3

 

5.2.2PowerDesigner中建立连接

在菜单的DataBase中,单击Contect配置连接。

图5.4

建立连接之后,在打开DatabaseGeneration,将表导入数据库。

图5.5

RUN之后,表就在数据库Class中了。

图5.6

 

从下面的图,可以看出表已经成功的导入数据库了。

图5.7

将建立的表导入数据库后,就能对数据库进行相关的插入、删除、更新等操作,数据库就实施起来了。

5.3建立视图

1.建立一个成绩不及格的学生学号,姓名的视图。

createviewStudent_不及格

as

selectStudent,Sno,Sname

from教学,Student

where教学.Grade<60and教学.Sno=Student.Sno

2.建立一个实验室容量的视图。

createviewLib_容量

as

selectLno

fromLib

3.建立一个学生总课程表的试图

CREATEVIEW课程表

AS

SELECTCourseAll.Cno,CourseAll.Cname,CourseAddress.Tname,CourseAddress.Caddress,CourseAddress.Ctime,

CourseAll.Ccredit

FROMCourseAll,CourseAddress

WHERECourseAll.Cname=CourseAddress.Cname

ANDCourseAll.Cno=CourseAddress.Cno

5.4触发器设计

在教学表里,考勤中放入旷课学生的次数。

当旷课次数多于4次时,系统激发触发器,该学生不具有考试资格,成绩设置为0。

CREATETRIGGER考勤情况

ON教学

FORUPDATE

ASBEGIN

UPDATE教学SETGrade='0'

WHERE考勤>4

END;

5.5存储过程

1.建立一个学生信息的存储过程。

CREATEPROCEDURESTUDENT

AS

BEGIN

SELECTSno,Sname,Ssex,Sage,Sdept,Sgrade

FROMStudent

END;

2.建立一个教师信息的存储工程。

CREATEPROCEDURETEACHER

AS

BEGIN

SELECTTno,Tname,Tdept

FROMTeacher

END;

3.建立一个课程表的存储过程。

CREATEPROCEDURE课程表

AS

BEGIN

SELECTCourseAll.Cno,CourseAll.Cname,CourseAddress.Tname,CourseAddress.Caddress,CourseAddress.Ctime,

CourseAll.Ccredit

FROMCourseAll,CourseAddress

WHERECourseAll.Cname=CourseAddress.Cname

ANDCourseAll.Cno=CourseAddress.Cno

END;

4.建立一个不及格学生的存储过程。

CREATEPROCEDURE课程表

AS

BEGIN

SELECTStudent.Sno,Student.Sname,Grade

FROMStudent,教学

WHEREStudent.Sno=教学.SnoAND教学.Grade<60

END;

5.建立一个成绩排序的存储过程。

CREATEPROCEDURE成绩排序

AS

BEGIN

SELECTStudent.Sno,Student.Sname

FROMStudent,教学

ORDERBY教学.Grade

END;

 

6.建立一个管理员的存储过程。

CREATEPROCEDURE管理员

AS

BEGIN

SELECTAno,Aname

FROMAdministor

END;

6总结

经过一学期的数据库学习,让我掌握的数据库的基础知识,在这两个星期的课程设计中,在基础知识的指导下,使我顺利完成课程设计的相关题目。

以前上课的基础知识当时觉得和枯燥,到课程设计的时候,才发觉所学的知识很重要,没有学习很好,课程设计进行的不是很顺利。

在课程设计中,巩固基础知识,将知识用在设计中,感觉受益匪浅。

使用POWERDESIGNER数据模工具对数据库逻辑结构的建立,转换为物理结构,然后连接如SQL2000或2005,然后进行触发器设计和存储结构。

在运用工程中遇到很多问题,在老师和同学的帮助下,成功的解决了问题,学习了宝贵的经验。

虽然这些天学习很累,但是学习到很多东西,身体累心不累。

致谢

通过两个星期的时间,我的课程设计划圆满的完成。

本次的课程设计能够顺利的完成,仅是靠我本人单方面的努力是不行的,还得到老师和同学的帮助,在这里我要表示感谢。

首先,感谢学校提供给我们这么好的学习环境,在这样优越的环境下,对我课程设计的圆满完成有提供了硬件基础。

然后,也感谢裴养军老师、雷亮老师、王双明老师这三位辅导老师的不辞劳苦、不厌其烦的对我们细心的指导。

最后,还要感谢给予我帮助的同学,课程设计的圆满完成有你们的一份功劳。

在本次课程设计完成时,由衷的感谢帮助过我的人。

 

参考文献

[1]丁振凡.Java语言实用教程.北京邮电大学出版社.2006.9

[2]丁振凡.Java语言实用教程实验指导.北京邮电大学出版社.2006.9

[3]萨师煊.数据库系统概论.高等教育出版社.2006.9

[4]曾平.数据库原理与应用.清华大学出版社.2006.10

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > IT计算机 > 电脑基础知识

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

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