




已阅读5页,还剩25页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
学生信息管理系统的设计开发随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。面对庞大的信息量,需要有学生信息管理系统来提高学生管理工作的效率。通过这样的系统,可以做到信息的规范管理、科学统计和快速的查询,从而减少管理方面的工作量。1、 系统设计1.1系统功能分析系统开发的总体任务是实现学生信息关系的系统化、规范化和自动化。系统功能分析是在系统开发的总体任务的基础上完成的。学生信息管理系统需要完成的功能主要有:l 用户管理信息的输入、密码修改、权限设置l 学籍管理信息的输入、修改、查询、删除以及档案存储和分类。l 班级管理信息的输入、修改和列表。l 课程管理信息的输入、修改和查询。l 成绩管理信息的输入、修改和查询。l 系部管理信息的输入、修改。1.2系统功能模块设计学生信息管理系统用户信息管理学籍信息管理班级信息管理课程信息管理成绩信息管理系部信息管理帮助信息管理添加学籍删除学籍学籍档案学籍分类修改学籍查询学籍添加课程修改课程添加班级课程班级课程查询系部信息添加信息修改信息添加用户修改密码权限管理退出系统添加班级修改班级班级列表用户添加成绩修改成绩查询成绩关于软件联系我们对上述各项功能进行集中、分块,按照结构化程序设计的要求,得到如图所示的系统功能模块图。图1-1 系统功能模块图2、 数据库设计数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构可以提高数据存储的效率,保证数据的完整性和一致性。同时,合理的数据库结构也将有利于程序的实现。设计数据库系统时需要充分了解用户各个方面的需求,包括现有的以及将来可能增加的需求。2.1 数据库需求分析用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据处理的流程,组成一份详细流程。针对一般学生管理系统的需求,通过对学生学习过程的内容和数据流程分析,设计如下面所示的数据项和数据结构:学生基本信息:包括的数据项有学号、姓名、性别、出生年月、系别号、班级代号、电话号码、入学时间、学制、毕业时间、学历、家庭住址、邮编、政治面貌、注释。班级信息:包括的数据项有班号、年级、辅导员、教室课程基本信息:包括的数据项有课程编号、课程名称、课程类型 、课程描述课程设置信息:包括的数据项有班号、年级、课程编号、课程名称学生成绩信息:包括的数据项有考试编号、学号、姓名、学期、班号、课程名称、分数系部信息:包括的数据项有系别编号、系名称、系主任根据学生入校注册、班级设置、成绩信息管理等数据处理过程,得到以下学业生管理系统数据流图。学生注册基本信息输入成绩信息管理班级设置班级管理课程基本信息班级课程设置成绩信息输入学籍信息管理班级课程管理系部设置系部设置图1-2 学生成绩管理系统数据流程图有了上面的数据结构、数据项和数据流程,就能进行以下的数据库设计。2.2 数据库概念设计得到上面的数据项和数据结构以后,就可以设计出能够满足用户需求的各种实体,以及实体之间的关系,为后面的逻辑结构设计打下基础。这些实体包含各种具体信息,通过相互之间的作用形成数据的流动。本系统根据上面的设计规划出的实体有:学生实体、班级实体、年级实体、课程实体、系部实体。各个实体具体的描述E-R图如图1-3到图1-7所示。图1-3为学生实体E-R图。学生学生基本信息学生班级信息学生课程信息学生成绩信息学生系部信息图1-3 学生实体E-R图班级班级所在年级班主任所在教室图1-4为班级实体E-R图。图1-4 班级实体E-R图图1-5为课程实体E-R图。课程课程号课程名课程类型课程描述学生系部设置系部班级设置年级课程设置课程考核过程图1-5 课程实体E-R图年级年级名称包括班级所属系部设置课程图1-6为年级实体E-R图。系部系部名称包括系部包括年级系主任程图1-6 年级实体E-R图图1-7为系部实体E-R图。图1-7 系部实体E-R图实体与实体之间的关系E-R图如图1-8所示。图1-8 实体之间的关系E-R图2.3 数据库逻辑结构设计现在需要将上面的数据库概念设计转化为SQL Server2005数据库系统所支持的实际数据库模型,也就是数据库的逻辑结构。在上面的实体以及实体之间关系的基础上,形成数据库中的表以及各个表之间的关系。学生信息管理系统数据库中各个表格的设计结果如下面的几个表所示。每个表表示在数据库中的一个数据库表。表1-1为学生基本信息表表1-1 student_Info表(学生基本信息表)列名数据类型可否为空说明Student_IDNchar(12)NOT NULL学生学号(主键)Student_NameChar(10)NULL学生姓名Student_SexChar(2)NULL学生性别Born_DatedatetimeNULL出生日期Depart_IDInt(4)NULL系别号Class_NOInt(4)NULL班级代号Tele_NumberNvarchar(10)NULL电话号码Entr_DatedatetimeNULL入学时间Stu_YearsmallintNULL学制Stu_ExitdatetimeNULL毕业时间Edu_bgChar(10)NULL学历addressVarchar(50)NULL家庭住址codeNoChar(10)NULL邮编ZzmmChar(10)NULL政治面貌commentVarchar(200)NULL注释表1-2 Class_info表(班级信息表)列名数据类型可否为空说明Class_NoInt(4)NOT NULL班号(主键)gradeChar(10)NULL年级directorTextNULL辅导员Classroom_NoChar(10)NULL教室表1-3 course_info表(课程基本信息表)列名数据类型可否为空说明Course_NoInt(4)NOT NULL课程编号(主键)Course_NameTextNULL课程名称Course_TypeChar(10)NULL课程类型Course_DesChar(50)NULL课程描述表1-4 gradecourse_Info表(年级课程设置信息表)列名数据类型可否为空说明Class_NoInt(4)NOT NULL班号(主键)GradeInt(4)NULL年级Course_TypeInt(4)NULL课程编号Course_DestextNULL课程名称表1-5 result_Info表(学生成绩信息表)列名数据类型可否为空说明Exam_NoChar(10)NOT NULL考试编号(主键)Student_IDNchar(12)NULL学号Student_NameChar(10)NULL姓名TearmChar(10)NULL学期Class_NoInt(4)NULL班号Course_NameTextNULL课程名称resultInt(4)NULL分数表1-6 depart_Info表(系部信息表)列名数据类型可否为空说明Depart_IDInt(4)NULL系编号Depart_NameTextNULL系名称Depart_MasterNametextNUll系主任表1-7 User_Info表(用户信息表)列名数据类型可否为空说明User_IDChar(10)NOT NULL用户名称(主键)User_NameChar(10)NULl用户密码User_DESChar(10)NULL用户权限3、 数据库结构的实现经过前面的需求分析和概念结构设计以后,得到数据库的逻辑结构。现在运用SQL Server 2005数据库系统中实现该逻辑结构。利用SQL Server 2005数据库系统中的SQL查询分析器实现的。下面给出创建这些表格的SQL语句。先创建student数据库:create database studentgo use studentgo(1) 创建系统用户表user_InfoCREATE TABLE user_Info (user_ID nchar(12) NOT NULL ,user_PWD nvarchar(12) NOT NULL ,user_Des char(10) not NULL ) INSERT INTO user_info VALUES (admin,admin,admin)(2) 创建学生基本信息表student_InfoCREATE TABLE student_Info(student_ID nchar(12) NOT NULL ,student_Name char (10) NULL ,student_Sex char (2) NULL ,born_Date datetime NULL ,depart_ID int NULL ,class_NO int NULL ,tele_Number nvarchar(15) NULL ,entr_Date datetime NULL ,stu_Year smallint NULL ,stu_Exit datetime NULL ,edu_bg char(10) NULL ,address varchar(50) NULL ,codeNo char(10) NULL ,zzmm char(10) NULL ,comment varchar(200) NULL ) (3)创建班级信息表class_InfoCREATE TABLE class_Info (class_No int NOT NULL ,grade char(10) NULL ,director text NULL ,classroom_No char(10) NULL ) GO()创建课程基本信息表course_InfoCREATE TABLE course_Info(course_No int NOT NULL ,course_Name text NULL ,course_Type char(10) NULL ,course_Des char(50) NULL ) GO(5)创建系部信息表depart_InfoCREATE TABLE depart_Info(depart_ID int NOT NULL ,depart_Name text NOT NULL ,depart_MasterName text NOT NULL ) GO(5)创建年级课程设置信息表gradecourse_InfoCREATE TABLE gradecourse_Info(class_No int NOT NULL ,grade int NULL ,course_No int NULL ,course_Name text NULL ) GO(6)创建学生成绩信息表result_InfoCREATE TABLE result_Info(exam_No char(10) NOT NULL ,student_ID nchar(12) NULL ,student_Name char(10) NULL ,tearm char(10) NULL ,class_No int NULL ,course_Name text NULL ,result int NULL )GOALTER TABLE class_Info WITH NOCHECK ADD CONSTRAINT PK_class_Info PRIMARY KEY CLUSTERED (class_No) GOALTER TABLE course_Info WITH NOCHECK ADD CONSTRAINT PK_course_Info PRIMARY KEY CLUSTERED (course_No) GOALTER TABLE depart_Info WITH NOCHECK ADD CONSTRAINT PK_depart_Info PRIMARY KEY CLUSTERED (depart_ID) GOALTER TABLE result_Info WITH NOCHECK ADD CONSTRAINT PK_result_Info PRIMARY KEY CLUSTERED (exam_No) GOALTER TABLE student_Info WITH NOCHECK ADD CONSTRAINT PK_student_Info PRIMARY KEY CLUSTERED (student_ID) GOALTER TABLE user_Info WITH NOCHECK ADD CONSTRAINT PK_user_Info PRIMARY KEY CLUSTERED (user_ID) GOcreate trigger EXIT_Dateon student_Infofor insert,updateas update student_Infoset stu_Exit=dateadd(year,stu_Year,entr_Date)GOcreate trigger deleteJILUon student_Infofor updateas delete from student_Infowhere student_ID in(select student_ID from student_Info where stu_Exitgetdate()GOCREATE TRIGGER AddUser ON student_Info FOR INSERT AS insert into user_info(user_ID,user_PWD,user_Des) select student_ID,student_ID,student from student_Info where student_ID not in(select user_ID from user_info)GOcreate trigger ttr3on student_Infofor deleteas delete from user_infowhere user_Des =studentand user_ID not in(select student_ID from student_Info)3.2 SQL Server设置SQL Server设置主要包括访问数据库时身份认证方式的设置,程序通过sa用户访问数据库的3.3 Visual Basic.NET运行环境的设置3.4 创建数据库在SQL Server查询设计器中建立student.sql文件。如图图1-9 运行student.sql文件建立student数据库,以及数据表,如图1-10.图1-10 student数据库文件及表文件4、 学生信息管理系统主窗体的创建上面的SQL语句在SQL Server 2005中的查询分析器中执行后,将自动产生需要的所有表。有关数据库结构匠所有后台工作已经完成。现在将使用Visual Basic.NET实现学生信息管理系统中各个功能模块的功能。4.1 创建工程项目studentinformation建立一个工程用来建造应用程序的文件的集合。4.2 创建学生信息管理系统的主窗体图1-11 系统的主窗体及菜单内容程序代码如下:Public Class Form2 Inherits System.Windows.Forms.FormPrivate Sub Form2_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Label1.Visible = False Dim userQx As String userQx = Label1.Text.ToString.Trim If userQx = admin Then ElseIf userQx = student Then 用户是student MenuItem16.Visible = False 添加学籍 MenuItem11.Visible = False 修改课程 MenuItem10.Visible = False 添加课程 MenuItem17.Visible = False 修改学籍 MenuItem31.Visible = False 学生档案 MenuItem30.Visible = False 退出系统 MenuItem18.Visible = False 查询学籍 MenuItem20.Visible = False 修改密码 MenuItem21.Visible = False 权限管理 MenuItem19.Visible = False 删除学籍 adduser.Visible = False 添加用户 MenuItem14.Visible = False 添加班级 MenuItem15.Visible = False 修改班级 MenuItem13.Visible = False 添加班级课程 MenuItem7.Visible = False 添加成绩 MenuItem8.Visible = False 修改成绩 MenuItem9.Visible = False 查询成绩 MenuItem22.Visible = False 系部信息 MenuItem23.Visible = False 添加系部信息 MenuItem26.Visible = False 修改系部信息 MenuItem24.Visible = False 班级课程查询 Else teacher MenuItem16.Visible = False 添加学籍 MenuItem11.Visible = False 修改课程 MenuItem10.Visible = False 添加课程 MenuItem17.Visible = False 修改学籍 MenuItem21.Visible = False 权限管理 MenuItem30.Visible = False 退出系统 MenuItem18.Visible = False 查询学籍 MenuItem20.Visible = False 修改密码 MenuItem31.Visible = False 学籍档案 MenuItem19.Visible = False 删除学籍 adduser.Visible = False 添加用户 MenuItem14.Visible = False 添加班级 MenuItem15.Visible = False 修改班级 MenuItem13.Visible = False 添加班级课程 MenuItem7.Visible = False 添加成绩 MenuItem8.Visible = False 修改成绩 MenuItem9.Visible = False 查询成绩 MenuItem22.Visible = False 系部信息 MenuItem23.Visible = False 添加系部信息 MenuItem26.Visible = False 修改系部信息 MenuItem24.Visible = False 班级课程查询 End If End Sub Private Sub MenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem1.Click End Sub Private Sub MenuItem11_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem11.Click Dim frm12 As New form12 frm12.show() 修改课程 End Sub Private Sub MenuItem10_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem10.Click Dim frm11 As New form11 frm11.show() 添加课程 End Sub Private Sub MenuItem12_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem12.Click End Sub Private Sub MenuItem21_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem21.Click Dim frm21 As New Form21 权限管理 frm21.Show() End Sub Private Sub MenuItem17_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem17.Click Dim frm7 As New Form7 修改学籍 frm7.show() End Sub Private Sub adduser_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles adduser.Click Dim frm3 As New form3 添加用户 frm3.Show() End Sub Private Sub MenuItem18_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem18.Click Dim frm4 As New Form4 查询学籍 frm4.Show() End Sub Private Sub MenuItem20_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem20.Click Dim frm5 As New Form5 frm5.Show() 修改密码 End Sub Private Sub MenuItem16_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem16.Click Dim frm6 As New Form6 frm6.Show() 添加学籍 End Sub Private Sub adduser_Click_1(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem19.Click Dim frm8 As New Form8 删除学籍 frm8.Show() End Sub Private Sub MenuItem14_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem14.Click Dim frm9 As New Form9 frm9.Show() 添加班级 End Sub Private Sub MenuItem15_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem15.Click Dim frm10 As New Form10 frm10.Show() 修改班级 End Sub Private Sub MenuItem13_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem13.Click Dim frm13 As New Form13 添加班级课程 frm13.Show() End Sub Private Sub MenuItem25_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem25.Click End Sub Private Sub MenuItem7_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem7.Click Dim frm15 As New Form15 添加成绩 frm15.Show() End Sub Private Sub MenuItem8_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem8.Click Dim frm16 As New Form16 修改成绩 frm16.Show() End Sub Private Sub MenuItem9_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem9.Click Dim frm17 As New Form17 查询成绩 frm17.Show() End Sub Private Sub MenuItem2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem2.Click End Sub Private Sub MenuItem22_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem22.Click Dim frm18 As New Form18 系部信息 frm18.Show() End Sub Private Sub MenuItem23_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem23.Click Dim frm19 As New Form19 添加信息 frm19.Show() End Sub Private Sub MenuItem26_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem26.Click Dim frm20 As New Form20 frm20.Show() 修改信息 End Sub Private Sub MenuItem24_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem24.Click Dim frm14 As New Form14 班级课程查询 frm14.Show() End Sub Private Sub MenuItem28_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem28.Click End Sub Private Sub MenuItem30_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem30.Click Me.Close() Application.Exit() 退出系统 End Sub Private Sub MenuItem31_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem31.Click Dim frm22 As New form22 frm22.show() End Sub Private Sub MenuItem32_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem32.Click Dim frm23 As New form23 frm23.show() End Sub Private Sub MenuItem33_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MenuItem33.Click Dim frm24 As New Form24 frm24.Show() End SubEnd Class Admin:全部的权限学生:修改密码、退出系统、查询学籍、学籍档案、学籍分类、班级列表、班级课程查询、查询成绩、系部信息、关于软件、联系我们。教师:修改密码、退出系统、查询学籍、学籍档案、学籍分类、班级列表、班级课程查询、添加成绩、修改成绩、查询成绩、系部信息、关于软件、联系我们。4.3系统用户管理模块的创建 系统用户管理模块主要实现:用户登录。修改密码。权限设置。4.3.1 用户登录窗体模块系统启动后,将首先出现如图1-12所示的用户登录窗体,用户首先输入用户名,然后输入密码以及权限,如果正确则进入主窗体。如果用户输入不正确就不能启动系统。Button1Button2ComboBox1Button3TextBox1TextBox2图1-12 用户登录窗体用户登录窗体中放置了二个文本框(TextBox),用来输入用户名、密码;用了一个 ComboBox来输入用户权限;三个按钮( CommandButton)用来登陆、重填或退出。四个标签 (Label)用来标示窗体的信息;两个PictureBox框来显示两个图像。这些控件的属性设置如下表1-2。表1-1 用户登录窗体中各个控件的属性设置控件属性属性取值Form1nameForm1Text学生信息管理系统TextBox1nameTextBox1TextBox2nameTextBox2PassWordChar*ComboBox1nameComboBox1Button1nameButton1Text登录Button2nameButton2Text重填Button3nameButton3Text退出Label1nameLabel3Text用户名Label2nameLabel2Text密码Label3nameLabel3Text用户权限PictureBox1namePictureBox1TextImagePictureBox2namePictureBox2TextImage代码如下:(1)对空间进行声明。Imports SystemImports System.DataImports System.Data.SqlClientPublic Class Form1Inherits System.Windows.Forms.FormDim frm As New Form2(2)当用户输入完用户名、密码和用户权限后,单击登陆按钮将对用户输入信息进行判断。用户点击该按钮,将触发按钮的click事件,代码如下:Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click checkFormat()End SubSub checkFormat() If TextBox1.Text = “” Or TextBox2.Text = “” Then MsgBox(“用户名和密码不能为空”) ElseIf ComboBox1.Text = “” Then MsgBox(“请选择登陆用户权限”) Else checkLoginName() End IfEnd SubSub checkLoginName() Dim str As String str = “Data Source=(local);Initial Catalog = Student;integrated Security=false;” & “User ID=sa;Password=sa123” Dim con As New SqlConnection(str) con.Open() Dim sql As String = “select * from user_Info where user_ID=” & TextBox1.Text.ToString().Trim() & “ and user_PWD=” & TextBox2.Text.ToString().Trim() & “ and user_Des=” & ComboBox1.Text.ToString.Trim() & “ “ Dim cmd As New SqlCommand(sql, con) Dim reader As SqlDataReader reader = cmd.ExecuteReader If reader.Read() = True Then Me.Hide() frm.Label1.Text = Me.ComboBox1.Text.ToString.Trim frm.Show() frm.Text = “湖南财政经济学院欢迎您-“ & TextBox1.Text & “ & ComboBox1.Text Else MsgBox(“登陆失败,请检查你用户名,密码,以及权限是否正确”) End IfEnd SubPrivate Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Me.Close()End Sub
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 低温天气混凝土施工方案
- 施工环境污染防治与控制方案
- 排水项目施工风险评估与管控方案
- 数控车工(中级)资格鉴定理论试题库及答案
- 建筑施工现场交通组织方案
- 施工材料使用量和成本控制方案
- 2025年褐煤开采洗选行业研究报告及未来行业发展趋势预测
- 2025年科普行业研究报告及未来行业发展趋势预测
- 2025年双肩包行业研究报告及未来行业发展趋势预测
- 2025年一次性手套行业研究报告及未来行业发展趋势预测
- 《工会财务与会计》课件
- 【课件】第六章+几何图形初步++综合与实践+设计学校田径运动会比赛场地课件人教版数学七年级上册
- 物业保洁员礼节礼貌培训
- 中枢神经系统药理学概论课件
- 第二单元 观察物体(单元测试)-2024-2025学年三年级上册数学北师大版
- DB65-T 4773-2024 生物安全实验室消毒技术指南
- 成人体外膜氧合辅助期间感染防控专家共识2024版
- 2024年河北石家庄市井陉矿区人力资源和社会保障局公益性岗位招聘100人历年(高频重点提升专题训练)共500题附带答案详解
- 抖音火花合同电子版获取教程
- 优化方案语文必修上册
- 云南省大中型水电站情况表
评论
0/150
提交评论