sql学生成绩信息管理系统.docx
- 文档编号:17006720
- 上传时间:2023-07-21
- 格式:DOCX
- 页数:11
- 大小:172.12KB
sql学生成绩信息管理系统.docx
《sql学生成绩信息管理系统.docx》由会员分享,可在线阅读,更多相关《sql学生成绩信息管理系统.docx(11页珍藏版)》请在冰点文库上搜索。
sql学生成绩信息管理系统
宁夏大学物理电气信息学院综合性实验
实验报告
课程名称数据库应用
实验学期2011至2012学年第二学期
学生所在系物理电气信息学院
年级2010级电气工程与自动化专业班级1
学生姓名魏川学号xxxxxx
任课教师边吉荣
实验成绩
任课教师制
2012年6月10日
实验题目
学生成绩管理系统
一、实验目的
在现代,高科技的飞跃发展,人们工作习惯的改变,特别是电脑的大量普及,人们生活节奏越来越快,怎样提高工作效率是人们首先考虑的问题。
学生成绩管理是一个非常繁琐与复杂的一项工作,一个原因就是工作量大,不好管。
SQL是数据库查询(Query)、数据定义(Definition)、数据操纵(Manipulation)。
基于以上原因,本文提出了一种学生成绩管理系统,它能很好地解决以上问题。
运用学生成绩管理系统可以减轻学院教学人员的工作量,缩小开支,提高工作效率与准确率,能够合理安排时间,能够尽快的知道自己的考试成绩。
非常方便的查询成绩及其他相关信息。
二,实验环境
软硬件环境需求:
microsoftsqlserver2000数据库
硬件环境:
586以上计算机
三,实验内容
1.需求分析
学生管理系统总共包括四个表学生信息表student、教师信息,teacher成绩表score和课程表course。
Student表:
在建表时,除了添加学号、姓名、班级必要字段,还添加一些其他的字段,比如:
出生日期、性别、邮箱地址和类型等。
Teacher表:
在建表时,除了添加教师编号,教师姓名,部门必要字段,还可以添加一些其他的字段,比如:
出生日期、性别、和电话等。
Score表:
此表应该包括学生学号、课程号和成绩等。
Course表:
应包括课程号,对应的课程名称和教此课程的教师编号。
建立一个数据库,然后在此数据库中建立这四个数据表。
创建触发器,建立索引。
数据库设计
1学生信息表(student)包括学号(sno)、姓名(sname)、性别(Ssex)、班级(class)、出生日期(sbirth)
2教师信息表(teacher)包括教师编号(tno)、姓名(tname)、性别(Tsex)、部门(depart)、职称(prof)、出生日期(tbirth)
3成绩表(score)包括学号(sno)、课程号(cno)、成绩(degree)
4(course)包括课程号(cno)、课程名称(cname)
创建数据库语句:
1,createdatabasessh
on
(name=ssh,
filename='e:
\小川\sql\ssh.mdf',
size=1)
logon
(name=ssh1,
filename='e:
\小川\sql\ssh1.ldf',
size=1)
2,student表
createtablestudent
(snochar(8)primarykey,
snamechar(10)notnull,
Ssexchar
(2)notnull,
Sbirthdatetime,
classchar(4)notnull
semailvarchar(20))
3,score表
createtablescore
(snochar(8)notnull,
cnochar(4)notnull,
degreefloatnotnull)
4、course表
createtablecourse
(cnochar(5)notnullprimarykey,
cnamevarchar(10)notnull,
tnochar(3)notnull)
(4)、teacher表
createtableteacher
(tnochar(5)notnullprimarykey,
tnamevarchar(10)notnull,
departvarchar(8)notnull,
Tsexchar
(2)notnull,
Tbirthdatetime,
profchar(6))
;
a在向学生信息表中添加
insertintostudentvalues('01','小名',男','1991-09-18','1')
insertintostudentvalues('02','小王','男','1991-09-05','2')
insertintostudentvalues('03','小书','男','1991-06-02','3')
insertintostudentvalues('04','小徐','女','1991-06-04','2')
insertintoscorevalues('111','100',90)insertintoscorevalues('222','101',99)
insertintoscorevalues('333','102,98)insertintoscorevalues('444','103',95)
insertintoscorevalues('555','104',94)insertintoscorevalues('666','105',99)
课程信息表
insertintocoursevalues('100','大学物理','100')
insertintocoursevalues('101,'大学音乐,'101')
insertintocoursevalues('102','数据库','102')
insertintocoursevalues('103,'大学英语','103')
insertintocoursevalues('104','数理方程','104')
insertintocoursevalues('105,'现行代数','105')
教师信息表
insertintoteachervalues('11','无意','计算机系','男','1973-4-5','教授')
insertintoteachervalues('12','生活','计算机系','女','1975-12-1','副教授')
insertintoteachervalues('13','没有','管理系','女','1975-3-3','副教授')
insertintoteachervalues('14','离开','英语系','男','1973-5-5','教授'
1、建立索引
(1)、在学生信息表中创建一个索引
语句:
createuniquenonclusteredindexix_semailonstudent(semail)
2,建立触发器
1,创建一个触发器,
createtriggerstudentinsert
onstudent
afterinsert
as
if(selectsemailfrominsertedwheresemailin(selectsemailfromstudent))isnotnull
begin
print'insertingfail'
rollbacktransaction
end
else
print'inseringsucceed'
运行结果
功能:
触发器不能显式地调用,而是在往表中插入记录、更新记录或者删除记录时,被自动的激活。
所以,触发器可以用来对表实施复杂的完整性约束,当触发器所保护的数据发生改变时,触发器会自动被激活。
如果发现引起触发器执行执行了一个非法的操作,则可以通过回滚事务使语句不能执行,自动返回执行前的状态。
触发器执行完成后,与该触发器相关的这两个表也会被删除。
此触发器来检查学生的学生信息是否相同
2,在成绩表建立一个触发器。
触发器语句:
createtriggercourse_score
onscore
afterinsert
as
if(selectcnofrominsertedwherecnoin(selectcnofromcourse))isnull
begin
print'没有这门课程'
rollbacktransaction
end
功能:
在成绩表建立一个触发器检验插入的课程号是否在课程表中的课程号的范围之内。
四,实验结果及分析
通过开发本学生成绩管理系统系统,使我进一步明确了开发研制一个管理信息系统的方法和思路,加深了对管理信息系统及sql的认识。
SQL的主要特点:
(1)SQL是类似于英语的自然语言,简洁易用。
2)SQL是一种非过程语言。
(3)SQL是一种面向集合的语言。
(4)SQL既是自含式语言,又是嵌入式语言;可独立使用,也可以嵌入到宿主语言中。
(5)SQL是数据库查询(Query)、数据定义(Definition)、数据操纵(Manipulation)学生管理系统总共包括四个表学生信息表student、教师信息,teacher成绩表score和课程表course。
Student表:
在建表时,除了添加学号、姓名、班级必要字段,还添加一些其他的字段,比如:
出生日期、性别、邮箱地址和类型等。
Teacher表:
在建表时,除了添加教师编号,教师姓名,部门必要字段,还可以添加一些其他的字段,比如:
出生日期、性别、和电话等。
Score表:
此表应该包括学生学号、课程号和成绩等。
Course表:
应包括课程号,对应的课程名称和教此课程的教师编号。
建立一个数据库,然后在此数据库中建立这四个数据表。
创建触发器,建立索引。
学生成绩管理是一个非常繁琐与复杂的一项工作,一个原因就是工作量大,不好做,所以要细心,耐心的做。
学生成绩管理系统可以更方便,快捷,准确的掌握,了解,管理每个学生的各个方面信息。
在期间我们学到了许多计算机专业知识,使我们受益匪浅。
数据表的创建和修改开始的,数据表的建立关系数据库的基本结构,它用来存储数据具有已定义的属性,在数据表的操作中有:
查看表的信息、查看表的属性、修改表当中的数据、删除表当中的数据以及修改、删除表的操作,从课程的学习和实验当中我了解到,表是数据库数据当中最重要的一个数据对象,表建立的好坏直接关系到数据库的实际使用效果,表当中的内容越具体对表越有利,同时对数据库的各种应用也有着各种各样的便利,但是表的内容也不能过于的繁琐,当然,这些也只能在今后的实际使用当中多多的应用,才能加深和理解如何对表进行规划才更有利于使用和查询。
在数据库中,数据内容的查询可以使用查询语句的方法查询,也可以使用视图操作的方法进行查询,使用视图操作的方法不仅可以简化数据操作,同时还可以检索数据,在查询时还能向基表当中添加、修改和删除数据,能有效的提高数据库可用性和安全性。
SQLServer2008的学习是在老师的悉心教导和上机实验实践当中度过的,经过短暂的学习,让我学会了很多知识.Thanksteacher!
教
师
评
价
评价教师签名:
年月日
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- sql 学生 成绩 信息管理 系统