您的位置:首页 > 其它

学生信息管理系统---之结构、关系分析

2012-08-20 21:19 344 查看
学生信息管理系统是对学生信息的管理,就是调用数据库中的相关,然后进行增删改查四种操作。



有关学生信息的student数据库是原有的,省去了我们在创建数据库啦。但是,在做学生信息管理系统的时

候,如果不好好分析数据库表,做系统时会很迷惑的。我就是一个例子,之前草草的看了一下表,一个表是用户名信

息,另外的都是学生信息,没有细细的研究各个表的关系和联系,也没有想为什么会这样建表,有关学生的信息为什

建成多个表等等,,,,,做这个系统的全过程都是似懂非懂,不懂又懂的样子。



所以,今后不管是做什么系统,在做之前都要细细的分析一下关系。涉及到数据库的时候,就要具体分析一下

表间的联系,及表的结构。



下面我们共同来分析一下:







一:学生管理系统与数据库student





(点击图片可查看大图)











1,进入学生管理系统,首先要调用数据库中user_Info 这个表。

user_info 表时student表中独立出来的。就是和其他的各个表没有关系。



2,学籍管理,主要是从student_Info表中获得信息。

查看学籍时,是从student_Info 中直接获取的信息;但是在添加学籍的时候,用到了class_info 和student_info两个表中的信息。这里利用两个表中的班号联系,将class_info 中所有的班号,都读取出来。



3,班级管理,主要是操作class_Info 表。

添加班级信息的时候,就是在gradecourse_Info表中获取grade信息,然后保存在class_info表中。在修改班级信息的时候,也可以利用两个表间的grade联系,得到其他的信息。



4,课程设置,主要操作course_info表。

在课程设置里面,所有的课程名称是从gradecourse_Info 中获取的,而gradecourse_info和course_info 表间又有course_name这个桥梁。



5,成绩管理,主要操作result_info表。

利用student_info 中学生号和姓名是一一对应的关系,在添加成绩的时候,有了一个学号,就自动添加相对应 的名字。利用course_info 表,知道了班号,就有这个班所对应的课程啦。



总而言之,学生信息管理系统,每个窗体不单单就是作用一个数据库表,在作用这个表的时候,同过表间的

关系,自动获得另外一个表的信息。这样及自动化,又方便。只要我们搞清关系就行。







二:student中各表间的联系。



student表中就是user_info这一个表是孤立出来的,其他的各表间都有联系。











三:student表的设计思想。



一直有个疑问,就是student表,为啥分了那么多个表,为啥不把grade年级信息加到student表中呢,这样就少了一个表,应该是 更加简单了吧。



结果正好相反,少了一个表,多了好多重复的信息,不是简单,是复杂。





假如:grade表中有三个年级是一年级,二年级,三年级。



student表中有三十个学生信息,每年级有十个学生。。



如果将两个表合成一个设计,那么填好这个表信息后,就会有三组十个重复的年级信息。前十个是重

复的一年级,中间十个是重复的二年级,最后十个是重复的三年级。。。本来年级就有三条记录,现在成了三十条记

录,重复了那么多。当然这只是为了说清问题,举得一个小数据,若这个学生信息是某大学的全体学生。。那么重复

信息可想而知啦。。。那是多么的浪费空间啊。。



当然如果合并表,不仅仅有浪费空间这个一个问题,还会牵扯到数据异常,数据不一致等等问题,这些问题

将会在之后的学习过程中慢慢解决。。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: