计算机科学与专业技术学院课程设计成绩单.docx

上传人:b****6 文档编号:11918892 上传时间:2023-06-03 格式:DOCX 页数:20 大小:448.75KB
下载 相关 举报
计算机科学与专业技术学院课程设计成绩单.docx_第1页
第1页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第2页
第2页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第3页
第3页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第4页
第4页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第5页
第5页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第6页
第6页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第7页
第7页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第8页
第8页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第9页
第9页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第10页
第10页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第11页
第11页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第12页
第12页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第13页
第13页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第14页
第14页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第15页
第15页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第16页
第16页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第17页
第17页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第18页
第18页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第19页
第19页 / 共20页
计算机科学与专业技术学院课程设计成绩单.docx_第20页
第20页 / 共20页
亲,该文档总共20页,全部预览完了,如果喜欢就下载吧!
下载资源
资源描述

计算机科学与专业技术学院课程设计成绩单.docx

《计算机科学与专业技术学院课程设计成绩单.docx》由会员分享,可在线阅读,更多相关《计算机科学与专业技术学院课程设计成绩单.docx(20页珍藏版)》请在冰点文库上搜索。

计算机科学与专业技术学院课程设计成绩单.docx

计算机科学与专业技术学院课程设计成绩单

计算机科学与技术学院课程设计成绩单

 

 

————————————————————————————————作者:

————————————————————————————————日期:

 

计算机科学与技术学院课程设计成绩单

课程名称:

数据库系统原理指导教师:

姓名

性别

学号

班级

综合成绩

成绩等级

程序运行情况

(占总成绩20%)

□能正确运行□基本能正确运行□能运行但结果不完善

(20分)(15分)(10分)

程序功能的完善程度

(占总成绩10%)

□完善□基本完善□不完善

(10分)(8分)(5分)

程序结构的合理性

(占总成绩10%)

□合理□基本合理□不太合理

(10分)(8分)(5分)

对问题的答辩情况

(占总成绩40%)

□概念正确有创新□能正确回答所有问题□基本能正确回答

(40分)(35分)(30分)

□部分问题回答概念不清晰

(20分)

学生的工作态度与独立工作能力

(占总成绩10%)

□工作态度认真能独立完成任务□工作态度认真但独立性较差

(10分)(8分)

□工作态度基本认真但缺乏独立性

(5分)

设计报告的规范性

(占总成绩10%)

□符合规范□基本符合规范□规范性较差

(10分)(8分)(5分)

优秀:

90分~100分良好:

80分~89分中等:

70~79分及格:

60~69分不及格0分~59分

武汉科技大学计算机科学与技术学院制表

 

计算机科学与技术学院

课程设计报告

课程名称:

数据库系统原理

专业:

班级:

级班

学号:

姓名:

指导老师:

 

网上选课系统

一、实验目的

利用一种DBMS作为设计工具,理解并应用课程中关于数据库设计的相关理论,能按照设计流程完成完整的数据库设计,包括需求分析、概念设计、逻辑设计、物理设计和实施。

同时能够应用各个阶段的典型工具

二、设备与环境

(1)硬件设备:

PC机一台

(2)软件环境:

安装Windows操作系统,安装数据库管理系统SQLServer2000等。

三、实验内容

完整实践应用数据库设计的工程过程:

需求分析\概念设计\逻辑设计\物理设计和实施:

(1)需求分析:

选定一个应用,对所设计的数据库系统有一定的调研分析,其结果应该以简单的需求分析说明书\数据字典和数据流图(2级数据流即可)表示;

(2)概念分析:

使用E-R图作为描述工具.描述出局部和全局的E-R图;

(3)逻辑设计:

将E-R图转化为相应的关系模式,并根据范式理论进行优化分析,关系模式不少于3个;

(4)物理设计:

根据需要设计必要的索引等结构;

(5)实施:

以某种DBMS为工具创建出完整的数据库.在数据库中要表现出的知识点包括

①登录控制(标准登录或混合登录)

②数据完整性(参照完整性、实体完整性、自定义完整性(包括触发器)

③设置用户,并相应设计用户的权限和角色(用户设计至少3个,有不同的权限)

④以游标或存储过程完成相关操作至少2个,以文件方式保存

(6)以上内容,请详细描述,并有必要抓图.

四、实验结果及分析

1.需求分析

随着信息时代科技不断提高,学校规模不断扩大,教学质量不断提高,大学期间有许多公共选修课,以往的选修课方法是课堂报名或者纸上填写方式报名,这种方法虽然直接,但是造成选课的盲目性,而且学生选过课程后不好在更改查看,一方面浪费大量的人力,物力资源,另一方面浪费时间以及在认为统计过程中不可避免的出现差错的情况。

这给广大的老师和学生带来诸多的不便,管理起来也相当困难。

使用网上选课系统可以提前进行网上选课,并且选课以后学生还可以在查看和更改,随意选择各个老师的课程,老师管理起来也比较方便。

鉴于它的重要性,这就迫切需要研制开发一款功能强大,操作简单,具有人性化的网上选课系统。

通过对学生选课管理系统工作内容和相关数据流程分析,根据选课管理系统的需要,设计出满足各种用户(管理员,教师,学生)的实体,以及他们之间的关系,得到数据库的模型。

系别包括系别号与系别名。

专业表包括专业号与专业名。

学生表包括学号,姓名,年龄,性别,年纪,系别号,专业号等。

教师表包括教师号,姓名,性别,系别号。

课程表包括课程号,课程名,学分,学时,开课状态,已选人数,限选人数等。

选课结果表包括学号,课程号,成绩。

授课表包括课程号,教师号。

管理员表包括ID,用户名与密码。

数据字典:

名字:

教师信息表

别名:

Teachers

描述:

记录教师的信息

定义:

教师信息表=教师号+姓名+性别+系别号

位置:

数据库

 

数据流图:

结构数据流图

2.概念结构设计

实体有:

学生、系别、专业、课程、教师、管理员。

总体E-R图:

局部E-R图:

 

3.逻辑结构设计

关系模式:

系别:

(系别号,系别名)

专业:

(专业号,专业名)

学生:

(学号,姓名,年龄,性别,年级,班级,系别名,专业名)

教师:

(教师号,姓名,性别,系别号)

课程:

(课程号,课程名,学分,学时,状态,已选人数,限选人数)

选课结果:

(学号,课程号,成绩)

授课:

(课程号,教师号)

管理员:

(ID,用户名,密码)

共需8个数据表:

系别表、专业表、学生表、教师表、课程表、选课结果表,授课表,管理员表。

各表关系分析:

1)过程分析:

选课系统面向3个用户群体:

学生,教师与管理员。

首先,学生根据自己的学号(主键)与姓名登陆选课系统,进入可以选课,查询自己的信息(专业,所在系部等。

)查询选课信息(并可以退选)。

教师根据自己的教师号与姓名进行登陆,可根据自己的知识情况申请开设课程,并设计学时学分与人数等,有课教师学期末可以给学生成绩。

管理员拥有最高权限,可以查看,更改所有教师学生信息,并通过调查审核批准教师的开课与否。

2)关系分析:

系别/专业表存储的是学生信息。

学生表存储学生信息,主键学号。

教师表存储教师信息,课程表存储选课的信息,包括开课状态,是否已选满(check约束)等,选课结果包括学生的学号与课程号(当学生选课后为自动触发填充型),授课表根据教师申请状态自动填充。

管理员表拥有最高权限,可更改,批准所有信息。

各表字段说明:

系别表Depart

字段

数据类型

长度

允许空值

备注

Depno

Char

20

主键

Depname

varchar

50

系别名

专业表Profess

字段

数据类型

长度

允许空值

备注

ProID

char

20

主键专业号

ProName

varchar

50

专业名称

学生表Students

字段

数据类型

长度

允许空值

备注

Sno

char

20

学号主键

Sname

varchar

50

学生姓名

Sage

char

20

学生年龄

Ssex

Char

20

性别

Sgrade

varchar

20

年级

Sclass

Varchar

20

班级

DepnO

char

20

学生系别

ProID

char

20

学生专业

教师表Teachers

字段

数据类型

长度

允许空值

备注

Tno

char

20

教师号主键

Tname

varchar

50

教师姓名

Tsex

Char

20

教师性别

Depno

char

20

教师所在系

课程表Course

字段

数据类型

长度

允许空值

备注

Cno

char

20

课程号

Cname

varchar

50

课程名

Credit

float

学分

Ctime

int

学时

State

int

开课状态

Cstuno

char

20

已选人数

Ccstu

char

20

限选人数

选课结果表Result

字段

数据类型

长度

允许空值

备注

Sno

char

20

学号

Cno

char

20

课程号

Score

char

20

分数

授课表class

 

字段

数据类型

长度

允许空值

备注

Cno

char

20

课程号

Tno

char

20

教师号

管理员表:

admin

字段

数据类型

长度

允许空值

备注

ID

Int

主键编号

Name

Char

20

用户名

Password

char

20

密码

4.代码编写与物理设计

1登陆,建库,做好备份.(代码略)

2数据完整性

各表中主键均不能为空且取值唯一,以选课表为例,列出各表及字段说明。

Course表设计

③各表间的外键关系及约束.

部分代码:

createtableTeachers

Tnochar(5)primarykeynotnull,

Tnamechar(10)notnull,

Tsexchar

(2)notnull,

Depnochar(20)foreignkeyreferencesDepart(Depno)NOTNULL

由于代码较多其它略.

Students与result

Depart与teachers

Course与result

其他略!

约束部分代码:

(Course表,其它略)

Cstunochar(20)notnullcheck(Cstuno>=0)default0,

Ccstuchar(20)notnullcheck(Ccstu>=0andCcstu<=120)default50

Result表约束

④触发器设计:

5存储过程

createproceduresp_add

(@Snochar(20),@Cnochar(5),@Scorefloat)

as

ifnotexists(select*fromStudentswhereSno=@Sno)/*检验学号*/

begin

print'该学号不存在!

'

return-1

end

ifnotexists(select*fromCoursewhereCno=@Cno)/*检验课程号*/

begin

print'该课程号不存在!

'

return-1

end

ifnotexists(select*fromResultwhere(Cno=@CnoandSno=@Sno))/*检验课程号*/

begin

print'该课程号已经选过一次!

'

return-1

end

begin

insertResultvalues(@Sno,@Cno,@Score)

updateCoursesetCstuno=Cstuno+1whereCno=@Cno

end

选课存储过程

退课:

/*退课存储过程*/

createproceduresp_delete

(@Snochar(20),@Cnochar(5))

as

ifnotexists(select*fromStudentswhereSno=@Sno)/*检验学号*/

begin

print'该学号不存在!

'

return-1

end

ifnotexists(select*fromCoursewhereCno=@Cno)/*检验课程号*/

begin

print'该课程号不存在!

'

return-1

end

ifnotexists(select*fromResultwhere(Sno=@SnoandCno=@Cno))/*检验是否已经选课*/

begin

print'您还未选该课!

'

return-1

end

begin

deletefromResultwhere(Sno=@SnoandCno=@Cno)

updateCoursesetCstuno=Cstuno-1whereCno=@Cno

end

五、总结

通过本次课程设计,我对SQLServer2000有了更深的了解,数据库和表是SQLServer2000用于组织和管理数据的基本对象,用户使用SQLServer2000设计和实现查询信息,首要的任务是实现数据库的数据的表示和存储,即创建数据库和表。

感谢此次设计中老师和同学给与的帮助.

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

当前位置:首页 > 人文社科 > 法律资料

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

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