首页 期刊简介 最新目录 过往期刊 在线投稿 欢迎订阅 访客留言 联系我们
新版网站改版了,欢迎提出建议。
访客留言
邮箱:
留言:
  
联系我们

合作经济与科技杂志社

地址:石家庄市建设南大街21号

邮编:050011

电话:0311-86049879
友情链接
·中国知网 ·万方数据
·北京超星 ·重庆维普
经济/产业

信息类别

首页/本刊文章/第466期/信息/科技/正文

发布时间

2013/6/6

作者

□文/董 军

浏览次数

2196 次

学生成绩管理系统数据库设计
  [提要] 一个好的数据库,不但可以提高数据查询效率,而且还可以保证数据的完整性和一致性。所以,数据库在信息管理系统中有着非常重要的作用。本文介绍如何使用SQL Server 2005完成学生成绩管理系统的数据库设计。
  关键词:SQL Server;成绩管理系统;数据库设计
  中图分类号:TP 文献标识码:A
  原标题:学生成绩管理系统数据库的设计
  收录日期:2013年4月9日
  引入
  因为各高校学生人数的增多以及学生成绩管理工作的复杂性,人工管理学生成绩信息的效率越来越低。这种情况下,学生成绩管理系统就出现了。
  一、需求分析
  需求分析是整个数据库设计中重要的一步,在这个阶段要充分地与用户沟通交流,了解与分析用户的需求。学生信息管理系统中涉及的主要人员有学生、教师、管理人员;主要的部门有教务处、系部。在需求分析时可以通过问卷调查、谈话等方式,了解用户的需求,最终绘制系统的数据流程图。
  二、数据库表
  关系数据库中所有的数据都存储在关系表中,通过需求分析,我们可以在学生成绩管理系统中创建以下数据表(此处只列举主要的数据表)。(表1、表2、表3、表4、表5)
  三、索引
  索引是提高查询的主要方法,在图书管理系统中,因为图书数量的庞大,所以建立索引是必不可少的。在为表中的主键建立索引以后,系统会自动地在主键上创建聚集索引。除此之外,我们还可以为一些经常查询的字段上,创建非聚集索引。
  索引创建以后会提高查询效率,但也会引起一些问题,如降低数据更新的速度、索引建后需要维护。所以,在创建索引时,要综合考虑其优缺点。可以参考以下原则为表中的列创建查询:(1)经常用于查询的列;(2)经常用于分组和排序的列;(3)在连接中常用到的列。
  按照以上原则,我们可以为以下列创建索引:Stu_Id、Stu_Name、Tea_Id、Tea_Name、speciality_Id、class_Id等。
  四、存储过程
  存储过程是T-SQL语句的集合,能够实现特定的功能。使用存储过程,可以大大减少网络传输流量,提高应用程序性能,而且由于它只在第一次执行时被优化、编译。因此使用存储过程不仅可以极大地降低应用程序的实现难度,而且还可以极大地提高系统的运行速度、效率。SQL Server 2005中存储过程分为:系统存储过程、用户自定义存储过程、扩展存储过程三种。例如:在该系统中,我们可以创建存储过程实现按照学生姓名查询成绩。实现代码如下:
CREATE PROCEDURE grade_by_name
@name char(10)
AS
BEGIN
SELECT*FROM grade
WHERE Stu_Id=(SELECT Stu_Id FROM STUDENT WHERE Stu_Name=@name)
END
  五、触发器
  触发器是在执行操作语句时自动执行的一种存储过程。触发器可以侦测到数据库内数据的操作,并自动地级联影响到整个数据库的操作,从而保证数据库数据的完整性和一致性。例如:在某一个学生退学删除学生基本信息以后,那么该学生相应的成绩信息也应该被删除。可以以下代码完成该功能:
CREATE TRIGGER  STUDENT_DELETE
ON Student
FOR Delete
As
BEGIN
Delete from grade
Where stu_id=(Select stu_id from deleted)
END
  (作者单位:安徽国防科技职业学院)

主要参考文献:
[1]黄存东.数据库原理及应用.中国水利水电出版社,2011.1.
[2](美)Peter Rob,Carlos Coronel.张瑜,张继萍等译.数据库系统设计、实现与管理.清华大学出版社,2005.
 
版权所有:合作经济与科技杂志社 备案号:冀ICP备12020543号
您是本站第 31452693 位访客