1、经济学院课程设计报告基于VB+SQL的学生信息管理系统课程名称: 数据库原理 专 业: 软件工程 姓 名: 班 级: 学 号: 指导教师:
2、 2009年 7 月10日基于VB+SQL的学生信息管理系统一、需求分析1. 编写目的描述系统的需求,在开发者和提出需求的人之间建立一种理解和沟通。2. 范围a名称:学生信息管理系统;b这是一个学生信息管理系统,目标是提高学生管理工作的效率。3. 产品功能这个系统具有对学生个人信息、课程信息进行管理和维护的功能。学生可以通过此系统进行个人信息查询。用户能对有关学生的各类信息的数据进行输入、修改和查询,能对学生信息进行按专业、班级进行查询与打印,对进入系统的人员进行管理员和用户的限制,并能对密码进行修改,能对数据
3、进行备份和恢复。具体分为管理员和用户对功能的需求:管理员对功能的需求:管理员的权限最大,有关学生信息的浏览,能按照学生的专业、班级、年级进行学生信息的添加、修改、删除,班级管理信息的浏览、添加、修改、删除,学生成绩的查询、添加、修改、删除;用户对功能的需求:学生只是利用此系统进行与自己有关的信息查询、输入等。浏览个人基本信息,登陆系统后修改个人密码、查询个人成绩;4. 功能需求a输入:对于学生信息的查询、修改、删除,可以输入的数据包括学生的姓名、学号、班级、年级信息,然后系统按此找到符合的学生信息;对于班级信息的查询、修改、删除,可以输入的数据包括学生的班级信息;对于学生成绩的查询可以输入的数
4、据包括姓名、班级信息;b输出:对于学生信息的查询、修改、删除,系统按此查询到结果后输出的数据包括学生的姓名、学号、年龄、性别、班级、年级信息等;对于班级信息的查询、修改、删除,输出的数据包括学生的班级、姓名、学号等信息;对于学生成绩的查询输出的数据包括姓名、学号、班级、成绩信息等;、5. 性能需求在这个系统中最需要考虑的性能需求就是系统安全性问题。在系统的每个阶段,均需要考虑彼此间的认证与授权,尤其要注意认证,简单的说就是确定谁是管理员,谁是普通用户,并验证该用户的身份,能使用系统的特定功能,也就是说,需要一种方法来决定允许特定的用户进行什么样的操作。6.程序用例图用户用例图: 管理员用例图:
5、二、概念结构设计 1.系统功能模块图:学生信息管理系统的主要功能模块划分包括以下几个方面:(1)系统登陆模块用于登录此系统。此登录系统中有权限管理功能,用户的权限分别为系统管理员,用户,不同的权限所能执行的功能不同。其中系统管理员拥有所有权限,普通用户拥有部分权限。(2)帐户管理模块该系统管理员可以修改密码,开启和关闭用户的功能。(3)学生管理模块管理员对学生各种信息添加到数据库中,并且可以进行查询、修改,对不需要的记录进行删除,用户可以对学生个人信息进行查询,修改自己的密码。(4)学生成绩模块该模块的功能是查看学生成绩。(5)数据备份/恢复模块该模块能随时对数据进行备份,必要时对数据进行恢复
6、。该系统模块图如下:学生信息管理系统登陆系统模块账户管理模块学生管理模块学生成绩模块登陆系统模块数据备份/恢复模块图1 系统模块图2.系统数据流图登陆系统模块数据流图:用户用户名和密码错误信息正确信息图2登陆系统模块数据流图验证用户信息重新输入进入系统帐户管理模块数据流图:用户用户名和密码非管理员信息管理员信息验证用户信息重新输入进入系统修改密码新密码新密码信息图3帐户管理模块数据流图用户信息表学生管理模块数据流图:用户学生信息查询学生信息学生查询学生信息清单管理员修改、删除、添加学生信息清单新信息新信息学生信息清单图3学生管理模块数据流图用户信息表学生成绩模块数据流图:用户学生成绩查询学生信
7、息成绩查询学生成绩清单管理员修改、删除、添加成绩学生成绩清单新信息新信息学生成绩清单图4学生成绩模块数据流图用户信息表数据备份/恢复模块数据流图:管理员登陆系统帐户信息数据备份数据信息备份数据图5数据备份/恢复模块数据流图用户信息表3.各个实体的实体图:1).用户信息实体图:用户用户名用户密码用户类型图6 用户信息实体图用户实体用于系统登录时,学生的用户名即为学生学号,密码默认为学号,用户类型分为一般用户和管理用户。2).学生信息实体图:学生学号姓名性别年龄班级号年级密码图7学生信息实体图3).班级信息实体:班级班级号班级名称班主任所在学院学生人数图8 班级信息实体图4).课程信息实体:课程学
8、分课程号名称学时学院图9课程信息实体图5).学生课程实体:课程-成绩记录号学号课程号成绩图10课程-成绩实体图4.系统E-R图:根据以上对系统的需求分析、模块设计就可以作出满足用户需求的各种实体以及他们之间的关系。根据这些设计规划出不同的实体:用户信息实体、学生信息实体、班级信息实体、课程信息实体、课程-成绩信息实体,下面是实体E-R图:包含登陆学生班级课程学习用户图11 实体E-R图成绩性别姓名密码学号课程号类型密码用户名年级班级年龄所在学院班主任班级名班级号学院学时名称学分学生人数三、逻辑结构设计数据库表设计:对系统有了整体上的设计之后就可以设计数据库表的形式和内容了,由E-R图转为关系模
9、型,系统需要的数据库表的具体内容如下:1)用户信息表users:用于存储学生信息管理系统中所有参与人员的信息,包括学生信息、管理员信息,这样做可以方便系统判断用户的类型以及对用户类型做统一管理。关系模型:用户(用户名,用户密码,用户类型)users(users_id,users_password,users_type)列名数据类型大小含义描述users_idvarchar10用户名,主键users_passwordvarchar10用户密码users_typeint用户类型,0表示学生,1表示管理员表1用户信息表user2)学生信息表student:在这个系统中,最重要的就是学生,系统设计了学
10、生信息数据表,学生信息表是学生信息管理模块的核心数据库表,用于存储本校所有学生信息,学生信息管理模块的学生信息查询、学生信息修改、密码修改都是基于这张表的。关系模型:学生(学号,密码,姓名,性别,年龄,班级号,年级)student(stu_id,stu_password,stu_name,stu_sex,stu_age,stu_class,stu_grade)列名数据类型大小含义描述stu_idvarchar10学生学号,主键stu_passwordvarchar10学生密码stu_namevarchar20学生姓名stu_sexvarchar1学生性别stu_ageint学生年龄stu_cl
11、assvarchar10学生班级stu_gradevarchar10学生年级表2学生信息表student3)班级信息表class:学生所在班级相对独立,系统用班级信息数据表记录本学校所有班级信息。关系模型:班级(班级号,班级名称,班主任,学生人数,所在学院)class(class_id,class_name,class_master,class_number,class_collage)列名数据类型大小含义描述class_idvarchar10班级号,主键class_namevarchar20班级名称class_mastervarchar20班级班主任的名字class_numberint100
12、班级学生人数class_collagevarchar20班级所在的学院表3班级信息表class4)课程信息表course:学生的学习离不开课程,系统设计了课程信息表,用于存储本校所有课程信息。关系模型:课程(课程号,学分,名称,学时,学院)course(course_id,course_credit,course_name,course_time,course_collage)列名数据类型大小含义描述course_idvarchar10课程号,主键course_creditint课程的学分course_namevarchar20课程的名称course_timeint20课程的学时course_
13、collagevarchar20课程所属学院表4课程信息表course5)课程-成绩信息表score:学生学习的每一科课程都会有成绩,并且每个学生每门只有一个成绩,系统设计了学生课程信息表,用于存储本校所有学生所学课程信息:关系模型:课程-成绩(记录号,学号,课程号,成绩)score(s_id,stu_id,course_id,score)列名数据类型大小含义描述s_idvarchar 10记录的ID号,主键stu_idvarchar10学生的学号course_idvarchar10课程号scoreint100学生成绩表5课程-成绩信息表score四、数据库物理设计数据库在物理设备上的存储结构
14、与存取方法称为数据库的物理结构,它依赖于选定的数据库管理系统。为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程,就是数据库的物理设计。数据库的物理设计通常分为两步:1. 确定数据库的物理结构,在关系数据库中主要指存取方法和存储结构;2. 对物理结构进行评价,评价的重点是时间和空间效率。出于安全考虑数据库时备份文件以及日志文件分别存放在不同的磁盘上。这里把数据库文件存放在C盘。而把日志文件存放在D盘。五、数据库的实施数据库在逻辑和物理上的实施主要是通过编写相应的程序,然后在程序中调用和连接数据库来实现的,所以数据库的实施要依赖于程序。我用的是vb语言和sql sever,建立数据库
15、并在程序中进行调试结果。创建数据库:1. 建立用户表(users表)2. 建立学生信息表(student表)3. 班级信息表(class表)4. 课程信息表(course表)5. 课程-成绩信息表(score表):六、系统运行结果程序调试成功后,便可以执行结果了,结果的部分截图如下:1. 程序执行后的初始界面若密码不正确或没有输入密码则提示:2. 管理员登陆后进入的界面3. 普通用户登录进入的界面: 4. 修改密码若输入信息错误则提示: 5. 学生信息查询,可有三种查询方式: 按学号查询:按姓名查询:按班级查询:6. 学生信息添加若输入错误则提示:7. 学生信息删除8. 班级信息查询若输入班号
16、错误则提示:9. 成绩信息查询成绩查询有三种方式:按学号查询:按班级查询:按姓名查询:10. 添加用户11. 删除用户12. 退出系统若想重新登录则选择重新登录,进入登录界面,取消则退出系统:七、实习总结这次的实习是在学习了数据库(sql sever)的基础上进行的程序实习,我这次使用的是VB的开发环境来编写的。程序中主要需要强调是实现的功能是数据库在程序中的连接和调用,这种编程的思想简化了程序中数据的复杂度,也使数据的变化和流向变得清晰明了。程序实现的是学生信息管理系统,其中的要求和模块分析已在需求分析和概念设计中有说明。因为VB语言在教程中没有学习过,所以在程序编写过程中遇到了很多的问题,如数据库的连接问题,连接是在vb的代码中与数据库连接的;程序中数据的定义和使用类型;对程序中的SQL语句的使用和对数据库连接的语法和过程。但是通过看参考书和搜索资料掌握了很多VB的知识,在程序的编写和调试中不断摸索和试验,最后将这个课程设计作出最后的结果。这次的实习不仅增进了我的编程知识,更熟悉了数据库的环境和应用,希望在以后的学习中不断进步。
©2010-2024 宁波自信网络信息技术有限公司 版权所有
客服电话:4008-655-100 投诉/维权电话:4009-655-100