文档库 最新最全的文档下载
当前位置:文档库 › 学生管理系统毕业论文

学生管理系统毕业论文

学生管理系统

摘要

随着学校的规模不断扩大,学生数量急剧增加,有关学生的各种信息量也成倍增长。面对庞大的信息量需要有学生档案管理系统来提高管理学生的工作的效率。通过本的系统可以做到信息的规范管理、科学统计和快速查询、修改、增加、删除等,从而减少管理方面的工作量。

本系统主要用于学校学生信息管理,总体任务是实现学生信息关系的系统化、规范化和自动化,其主要任务是用计算机对学生各种信息进行日常管理,如查询、修改、增加、删除,另外还考虑到学生选课,针对这些要求设计了学生信息管理系统本系统主要用于学校学生信息管理,如查询、修改、增加、删除,另外还考虑到学生选课,针对这些要求设计了学生信息管理系统。

本系统主要包括学生信息查询、教务信息维护和学生选课三部分。其功能主要有:

⒈有关学籍等信息的输入,包括输入学生基本信息、所在班级、所学课程和成绩等。

⒉学生信息的查询,包括查询学生基本信息、所在班级、已学课程和成绩等,学生信息的修改。

3.班级管理信息的输入,包括输入班级设置、年级信息等。

4.班级管理信息的查询。班级管理信息的修改,学生课程的设置和修改。

关键词:vb语言、学生管理系统、C++程序设计

目录

第一章VISUAL BASIC 概述-------------------------------------------- 3 1.1V ISUAL B ASIC 语言的特点 (3)

1.2V ISUAL B ASIC 系统常用名词 (3)

第二章 WINDOWS下的VB编程环境-------------------------------------- 4 2.1面对对象的编程 (4)

2.2实现菜单选项 (4)

2.3实现工具栏 (4)

第三章怎样开发一个学生信息管理系统的查询模块----------------------- 5 3.1查询模块的设计分析 (5)

3.3关系型数据库的实现 (5)

3.4二者的结合(DBA) (5)

第四章使用ACCESS2000创建数据库------------------------------------ 6 4.1数据库的概念 (6)

4.2新建一个数据库 (6)

4.3修改已建的数据库 (6)

第五章可行性分析--------------------------------------------------- 6第六章系统(查询模块)总体规划------------------------------------- 8 6.1系统功能(查询模块) (8)

6.2流程图 (8)

第七章系统具体实现------------------------------------------------- 9 7.1.各功能的实现 (9)

7.2程序代码 (9)

第八章结束语----------------------------------------------------- 25 参考文献----------------------------------------------------------- 26 致谢--------------------------------------------------------------- 27

第一章Visual Basic 概述

1.1 Visual Basic 语言的特点

Visual Basic 语言用其设计应用程序时具有两个基本特点:可视化设计和事件驱动编程。

(1)可视化设计:表现在VB在设计应用于程序界面时有“所见即所得”的处理功能。

(2)事件驱动编程:在设计应用程序时,把对象添加到窗体中,在用户与程序进行交互时,用户基本上是通过鼠标、键盘与应用程序进行交互

的,那些对象就必须对鼠标和键盘操作所引发的事件做出响应,来执

行一段应用程序。

1.2 Visual Basic 系统常用名词

Visual Basic 系统除了一般高级语言所具有的一些名词术语外,还有几个系统常用的名词。其基本含义如下:

(1)视窗(Form)

视窗是进行人机交互的界面或接口,也叫窗体。VB系统的人机交互界面或接口,无论是在设计时或是在运行时,都是Windows 系统的标准视窗。

(2)对象 (Object)

对象是VB系统内部提供给设计者可以直接使用的处理输出的控制工具。本程序所应用到的对象类型有标签框 (Label Box),文本框 (Text Box),命令按扭 (Command Button),网格 (Data Grid),ADO控件 (Adodc1)等。当把这些工具放置到用户界面对应的窗体上时,被称为对象或控件。用户可以通过设置对象的“属性”和“方法”,便于对象适应自己所设计应用程序的输入输出内容,对象的生成过程及结构都被封装起来。正确使用对象可以减少程序和开发时间,提高程序设计者的工作效率。

(3)属性 (Properties)

属性是VB系统提供的有关对象的参数或数据接口。用户通过适当地设置或改变对象的属性来确定对象的外观及性能特征,从而有效地使用系统提供的对象。比如,对象的名称、在屏幕上显示的位置、大小、颜色、接收或容纳的数据内容及数据的表现格式等。

(4)事件 (Events)

事件是指用户或操作者对计算机进行的某一操作(如击键、单击或移动鼠标等)的行为或系统状态发生的变化。VB系统常用事件来引导计算机执行一段程序。程序所用的键盘事件有KeyPress(按键)事件,KeyDown事件和KeyUp 事件;鼠标事件有Click(单击鼠标)事件,DbDlicd(双击鼠标)。

(5)方法 (Method)

方法主要是指对一个对象使用某种作用的过程。它是在程序执行的过程中要计算机执行的某种操作。其程序的方法有Show(显示)方法,Hide(隐藏)

方法,Refresh(刷新)方法。

(6)过程 (Procedure)

过程是指经过定义或说明的,或基于某一对象对应的事件所引发的程序段。

(7)模块 (Module)

模块是指一些运算量或过程进行声明或定义的一个集合。系统程序大体可分成四个模块:数据输入、根据查询、数据打印和通讯。

第二章 Windows下的VB编程环境

2.1 面对对象的编程

面向对象的设计方法 (OOP, Objected Programming) 从应用领域内的问题着手,以直观自然的方式描述客观世界的实体。Visual Basic 作为一种面向对象的编程方法,把程序和数据封装起来作为一个对象,并为每个对象赋予相应的属性。在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上,由 Visual Basic 自动生成对象的程序代码并封装起来。Visual Basic 应用程序基本的构建块是用户所创建的对象,每一个对象都具有一些特性和行为(属性、事件和方法)。开发人员可以最有效利用所创建的每一个对象。使用应用程序具有可通用性可说扩展性和强有力的功能。

Visual Basic 应用由一系列对象组成,包括有函数、菜单、函数、结构和数据窗口、用户对象、用户事件等等,对象中又包含若干控件如命令按钮、单行编辑器等这些对象和控件都可在许多应用中重复使用。

2.2 实现菜单选项

菜单是程序最重要的特性之一,大多数程序都依赖一个定义良好的菜单使程序易于使用和维护,Visual Basic 也提供了强大的创建菜单功能是程序更加标准。

本系统使用 Visual Basic 的菜单编辑器建立菜单或者修改已经存在的菜单,您也可以使用Visual Basic 的Application Wizard 来操作。

2.3 实现工具栏

CoolBar控件与Office2000 中看到的CoolBar是类似的。CoolBar就是一个可以在窗体上浮动的工具,同时也是其他ActiveX的容器。通过在CoolBar 中迁入其他空间你也可以向用户提供更好的灵活性和义用性。

选择“工程”下拉菜单中的“部件”选项,显示“部件”对话框。在“控件”选项卡列表中选择“Microsoft Windows Common Controls 6.0”后工具相中增加改控件。

本系统就用了Cool工具中的Statubar控件,在系统这一界面中,添加了

状态栏,在第一个栏中,在样式这一栏中选择了文本,在第二个栏中,选择了系统日期,第三个栏中选择了系统时间,这样,任何时候操作本系统,都可以看到当前的时间和日期。

第三章怎样开发一个学生信息管理系统的查询模块

3.1查询模块的设计分析

根据实际情况,我们使用原型法(Rapid Prototyping) 即以少量代价快速地构造一个可执行的软件模型。使用户可以较快地确定需求,然后采用循环进化的开发方式,对系统模型作连续的精化,将系统需具备的性质逐渐增加上去,直到所有的性质全部满足。此时模块也发展成为最终产品了。

3.2编程环境的选择

微软公司的Visual Basic 6.0是Windows应用程序开发工具,使目前最为广泛的、易学易用的面向对象的开发工具。Visual Basic提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。故而,实现本系统VB是一个相对较好的选择。

3.3关系型数据库的实现

Access2000就是关系数据库开发工具,数据库能汇集各种信息以供查询、存储和检索。Access的优点在于它能使用数据表示图或自定义窗体收集信息。数据表示图提供了一种类似于Excel的电子表格,可以使数据库一目了然。另外,Access允许创建自定义报表用于打印或输出数据库中的信息。Access也提供了数据存储库,可以使用桌面数据库文件把数据库文件置于网络文件服务器,与其他用户共享数据库。Access 是一种关系数据库工具,关系数据库是已开发的最通用的数据库之一。如上所述,Access作为关系数据库开发具备了许多优点,可以在一个数据包同时拥有桌面数据库的便利和关系数据库的强大功能。

3.4二者的结合(DBA)

微软的JET数据库引擎提供了与数据库打交道的途径,我们是通过它以及Visual Basic来访问数据库并对其进行各种操作。Visual Basic、Access以及其他微软的软件产品都是通过共用JET数据库引擎,从而给用户提供了丰富的数据类型。

ADODC控件在数据库中的信息与将信息显示给用户看的Visual Basic 程序之间架起了一座桥梁。我们可以设置ADODC控件的各个属性,告诉它要调用那个数据库的哪个部分。缺省情况下,ADODC控件根据数据库中的一个或多个数据库表建立一个dynaset-type(动态集合)类型的记录集合。一个记录集合是

动态的也就意味着,当原来的数据表中的容改变了以后,该记录集合中的记录也会随之改变。将ADODC控件放置在窗体中之后,我们还必须在该控件与要处理的数据库之间建立联系。

第四章使用Access2000创建数据库

4.1数据库的概念

数据库是一种存储数据并对数据进行操作的工具。数据库的作用在于组织和表达信息,简而言之,数据库就是信息的集合。计算机的数据库可以分为两类:非关系数据库(flat-file)和关系数据库(relational)。关系数据库中包含了多个数据表的信息,数据库含有各个不同部分的术语,象记录、域等。

4.2新建一个数据库

创建任何一个数据库的第一步是仔细的规划数据库,设计必须是灵活的、有逻辑的。创建一个数据库结构的过程被认为是数据模型设计。

1.标识需要的数据;

2.收集被子标识的字段到表中;

3.标识主关键字字段;

4.规范数据;

5.标识指定字段的信息;

4.3修改已建的数据库

数据库的修改分为;添加、编辑和删除记录。这三种操作均可由Visual Basic 创建的程序来完成,下面的章节将详细描述实现的具体方法。

第五章可行性分析

学生信息,作为一个学校,就有一定的工作量存在,而学生信息,它的工作量可能是其它信息工作量的几倍,班级的增加、班级的查找、班级的修改;学生档案;课程管理;成绩管理;缴费管理;统计等等,每个信息的数据都在不断地变化着,如果采用人工的方式进行操作,那么,一天的工作量,足以让人觉得比较繁琐,吃不消。针对这样的情况,采用让数据的查询变得简单化,数据变的更让每个人都在任何时刻都可以了解到。

学生信息管理系统是为本校开发的,本系统所采用的语言是Visual Basic,用Microsoft Access 2000数据库完成。该系统总体有四部分组成,包括学生信息查询、教务信息维护、学生选课及用户管理。通过本系统,把本校内部查

询学生信息、教务信息、学生选课各个环节进行有效地计划、组织和控制。通过本校内部的信息,依据统一数据信息进行管理,把任何一块信息所产生的数据变动及时地反映给其它相关信息,做到数据共享。

本系统主要信息流程为:教务信息维护接受学生的信息,学生信息查询根据教务信息维护的学生信息做出对所接收的信息合理性进行判断,并交于信息维护进行相应的修改,再把信息存入数据库中。学生选课是对学生进行相应选择自己相关的课程。最后进行打印。

采用本系统,能够使整个系统内部所有信息的工作简化,提高工作效益。由于采用统一的数据信息,使相关资料能够快速地查询所需的数据、资料及其它信息的,使信息快速高效运行。

本系统中使用到的数据表主要有班级表、成绩表、缴费表、课程表、学生档案、用户资料,由这六个表,组成了名为信息的数据库(如图5-1)其中学生档案是本系统主要的

(图5-1信息数据库)

一张表,所有信息都是根据这张学生档案进行有关的操作,主要的字段有:学号、姓名、年级、专业、性别、出生年月、民族、籍贯、政治面貌、家庭地址、邮政编码、联系电话、入学时间、备注。其中日期的数据类型为日期/时间天型,其它的数据类型为文本型;成绩表中字段为:学号、姓名、年级、专业、学期、考试时间、考试科目、考试地点、课程性质、科目分数、违纪类型、备注;课程表中字段为:专业、年级、学期、课程名称、教材、任课老师、课时、上课地点、课程性质、考试性质;用户资料中的字段包括:用户名、密码、身份。

数据库与VB的连接:本系统的数据链接采用的是ADO方法,打开控制面板,打开ODBC数据源图标,选择“系统DSN”标签,点击“添加”按钮,在弹出的“创建新数据源”对话框中选择名称为“Microsoft Access Drive(*.mdb)”,点击“完成”按钮,在ODBC Microsoft Access 安装对话框中在数据源名中输入信息,在数据库这个框中,单击“选择”按钮,在弹出的选择数据库这一对话框架中,在驱动器下拉列表框中选择本系统数据库所在驱动器,在目录中选

择库所在的文件夹,在文件类型中选择选“Access数据库(*.mdb)”,在数据库名中选择本系统的数据库,点击“确定”按钮即完成数据链接。

在VB中,用ADODC链接数据库,用DataGrid或DATA将库中的数据在界面中显示出来,本系统采用DataGrid。在界面上右击Adodc控制,在弹出的快捷菜单中选择属性,在属性对话框中,在“属性”这一标签中,选中单选框“Use ODBC Data Source Name”,并在下拉文本框中选择已经配置好的数据源名信息,再在“RecordSoure”标签中,在Commard Text(SQL)文本框中输入查询语句,如:select * from 学生档案。同时,将桌面的DataGrid控件选中,在属性框中,将它的Datasoure设为Adodc。

我们可以设置DataGrid控件的外观:选中该控件,右击,在弹出的快捷菜单中选择“检索字段”,在弹出的对话框中单击“确定”,这时,表格中出现了表的字段。然后再右击,同样,在弹出的快捷菜单中选择“编辑”,我们就可以所在的表格的宽度进行调整。

第六章系统(查询模块)总体规划

6.1系统功能(查询模块)

1.查询信息的情况;

2.判断信息是否符合要求;

3.将符合条件的信息进行打印;

6.2流程图

第七章系统具体实现

7.1.各功能的实现

课程管理:课程设置(如:界面如图二)

(图7-1课程设计界面)

运行程序后,进入课程管理模块,课程管理模块的第一块是课程设置,在这模块中可以把专业、年级、学期、课程名称、教材、任课老师、课时、上课地点、课程性质和考试性质等信息输入,以便使用。

7.2程序代码

Private Sub Command1_Click()

Dim myCon As New ADODB.Connection

Dim myRs As New ADODB.Recordset

Dim ZhuanYe, NianJi, XueQi, KeCheng, JiaoCai, RenKLS, KeShi, ShangKeDD, KeChengXZ, KaoShiXZ As String

ZhuanYe = Text1.Text

NianJi = Text2.Text

XueQi = DTPicker1.Value

KeCheng = Text4.Text

JiaoCai = Text5.Text

RenKLS = Text6.Text

KeShi = Text7.Text

ShangKeDD = Text8.Text

KeChengXZ = Combo1.Text

KaoShiXZ = Combo2.Text

If Trim(ZhuanYe) = "" Or Trim(NianJi) = "" Or Trim(XueQi) = "" Or Trim(KeCheng) = "" Or Trim(JiaoCai) = "" Or Trim(RenKLS) = "" Or Trim(KeShi) = "" Or Trim(ShangKeDD) = "" Or Trim(KeChengXZ) = "" Or Trim(KaoShiXZ) = "" Then

MsgBox "请填写要修改课程资料的内容!"

Combo1.Text = ""

Combo2.Text = ""

Exit Sub

End If

myCon.Open "dsn=信息"

myRs.Open "select * from 课程表 where 专业='" & Text1.Text & "'", myCon, 3, 2

myRs!年级 = Text2.Text

myRs!学期 = DTPicker1.Value

myRs!课程名称 = Text4.Text

myRs!教材 = Text5.Text

myRs!任课老师 = Text6.Text

myRs!课时 = Text7.Text

myRs!上课地点 = Text8.Text

myRs!课程性质 = Combo1.Text

myRs!考试性质 = Combo2.Text

myRs.Update

myRs.Close

myCon.Close

MsgBox "您确定要修改吗?", vbYesNo, "提示"

Frm_UpdateGrean.Adodc1.Refresh

Frm_UpdateGrean.DataGrid1.Refresh

Text1.Text = ""

Text2.Text = ""

'Text3.Text = ""

Text4.Text = ""

Text5.Text = ""

Text6.Text = ""

Text7.Text = ""

Text8.Text = ""

Combo1.Text = ""

Combo2.Text = ""

End Sub

Private Sub Command2_Click()

Unload Me

End Sub

Private Sub Command3_Click()

Unload Me

Frm_FindGrean.Show 1

End Sub

Private Sub DataGrid1_Click()

'Frm_UpdateGrean.Adodc1.RecordSource = "select * from 课程表 where 专业 = '" & Trim(DataGrid1.Row) & "'"

'Text1.Text = Frm_UpdateGrean.Adodc1.Recordset.Fields("专业")

'Text2.Text = Frm_UpdateGrean.Adodc1.Recordset.Fields("年级")

'Text3.Text = Frm_UpdateGrean.Adodc1.Recordset.Fields("学期")

'Text4.Text = Frm_UpdateGrean.Adodc1.Recordset.Fields("课程名称")

'Text5.Text = Frm_UpdateGrean.Adodc1.Recordset.Fields("教材")

'Text6.Text = Frm_UpdateGrean.Adodc1.Recordset.Fields("任课老师")

'Text7.Text = Frm_UpdateGrean.Adodc1.Recordset.Fields("课时")

'Text8.Text = Frm_UpdateGrean.Adodc1.Recordset.Fields("上课地点")

'Combo1.Text = Frm_UpdateGrean.Adodc1.Recordset.Fields("课程性质")

'Combo2.Text = Frm_UpdateGrean.Adodc1.Recordset.Fields("考试性质") End Sub

Private Sub DTPicker1_CallbackKeyDown(ByVal KeyCode As Integer, ByVal Shift As Integer, ByVal CallbackField As String, CallbackDate As Date)

End Sub

Private Sub Form_Activate()

Frm_FindGrean.Adodc1.RecordSource = strTiaoJian

Frm_FindGrean.Adodc1.Refresh

Set DataGrid1.DataSource = Frm_FindGrean.Adodc1

End Sub

Private Sub Form_Load()

Combo1.AddItem ("必修")

Combo1.AddItem ("选修")

Combo1.AddItem ("自开")

Combo2.AddItem ("考试")

Combo2.AddItem ("查考")

Text1.Text = ""

Text2.Text = ""

'Text3.Text = ""

Text4.Text = ""

Text5.Text = ""

Text6.Text = ""

Text7.Text = ""

Text8.Text = ""

Combo1.Text = ""

Combo2.Text = ""

End Sub

Private Sub Text1_Change()

End Sub

Private Sub Text2_Change()

End Sub

Private Sub Text8_Change()

End Sub

课程管理:课程查询(如:界面如图7-2)

(图7-2课程查询界面)

当输入查询类别、运算符和条件后可以查找到所需要的课程设置,或按查询时间来查询,输入所要查找的时间段,就可查到所要的课程设置。

代码如下:

Private Sub Command1_Click()

Dim a As String

Dim KCCX1 As String

Dim KCCX2 As String

Dim str1 As String

Dim str2 As String

If Option3.Value = True Then

a = Trim(Combo2)

Select Case a

Case "="

KCCX1 = "" & Combo1.Text & " " & Combo2.Text & " '" & Trim(Text1) & "'"

Case "like"

KCCX1 = "Instr(1," & Combo1.Text & ",'" & Trim(Text1.Text) & "')<>0 "

End Select

a = Trim(Combo4)

Select Case a

Case "="

KCCX2 = "" & Combo3.Text & " " & Combo4.Text & " '" & Trim(Text2) & "'"

Case "like"

KCCX2 = "Instr(1," & Combo3.Text & ",'" & Trim(Text2.Text) & "')<>0 "

End Select

If Option1.Value = True Then

If KCCX1 = "" Then

strTiaoJian = "select * from 课程表 where " & KCCX2

ElseIf KCCX2 = "" Then

strTiaoJian = "select * from 课程表 where " & KCCX1

Else

strTiaoJian = "select * from 课程表 where " & KCCX1 & "and " & KCCX2

End If

ElseIf Option2.Value = True Then

If KCCX1 = "" Then

strTiaoJian = "select * from 课程表 where " & KCCX2

ElseIf KCCX2 = "" Then

strTiaoJian = "select * from 课程表 where " & KCCX1

Else

strTiaoJian = "select * from 课程表 where " & KCCX1 & "or " & KCCX2

End If

Else

If KCCX1 = "" Then

strTiaoJian = "select * from 课程表 where " & KCCX2

ElseIf KCCX2 = "" Then

strTiaoJian = "select * from 课程表 where " & KCCX1

Else

MsgBox "请选择连接方式!", vbOKOnly, "警告"

Exit Sub

End If

End If

If (KCCX1 & KCCX2) = "" Then

MsgBox "请输入查询类别!", vbOKOnly, "警告"

Exit Sub

Else

Unload Me

Frm_UpdateGrean.Show 1

End If

End If

If Option4.Value = True Then

If Val(Combo6) > Val(Combo9) Then

MsgBox "请正确选择年份!", vbOKOnly + vbExclamation, "信息提示"

Combo6.SetFocus

Exit Sub

Else

If Val(Combo6) = Val(Combo9) Then

If Val(Combo7) > Val(Combo10) Then

MsgBox "请正确选择月份!", vbOKOnly + vbExclamation, "信息提示"

Combo7.SetFocus

Exit Sub

Else

If Val(Combo7) = Val(Combo10) Then

If Val(Combo8) > Val(Combo11) Then

MsgBox "请正确选择日期!", vbOKOnly + vbExclamation, "信息提示"

Combo8.SetFocus

Exit Sub

End If

End If

End If

End If

End If

If Combo6.Text = "" Or Combo7.Text = "" Or Combo8.Text = "" Or Combo9.Text = "" Or Combo10.Text = "" Or Combo11.Text = "" Then

MsgBox "请输入完整的日期", vbOKOnly, "警告"

Exit Sub

End If

str1 = Trim(Combo6) & "-" & Trim(Combo7) & "-" & Trim(Combo8)

str2 = Trim(Combo9) & "-" & Trim(Combo10) & "-" & Trim(Combo11) str1 = Format(str1, "yyyy-mm-dd")

str2 = Format(str2, "yyyy-mm-dd")

If sqlstr = "" Then

sqlstr = "" & Trim(Combo5.Text) & ">=#" & Format(str1, "yyyy-mm-dd") & "# and " & Trim(Combo5.Text) & "<= #" & Format(str2, "yyyy-mm-dd") & "#"

Else

sqlstr = sqlstr & " and " & Trim(Combo5.Text) & ">=#" & Format(str1, "yyyy-mm-dd") & "# and " & Trim(Combo5.Text) & "<= #" & Format(str2, "yyyy-mm-dd") & "#"

End If

If sqlstr = "" Then

MsgBox "请先输入查找时间!"

Exit Sub

End If

strTiaoJian = "select 专业,年级,学期,课程名称,教材,任课老师,课时,上课地点,课程性质,考试性质 from 课程表 where " & sqlstr

Unload Me

Frm_UpdateGrean.Show 1

End If

If Option3.Value <> True And Option4.Value <> True Then

MsgBox "请选择查询方式!", vbOKOnly, "警告"

Exit Sub

End If

End Sub

Private Sub Command3_Click()

Unload Me

End Sub

Private Sub Form_Load()

Dim i, j As Integer

For i = 1999 To 2010

Combo6.AddItem i

Combo9.AddItem i

Next i

Combo6.ListIndex = 0

Combo9.ListIndex = 0

For i = 1 To 12

Combo7.AddItem i

Combo10.AddItem i

Next i

Combo7.ListIndex = 0

Combo10.ListIndex = 0 For i = 1 To 31

Combo8.AddItem i

Combo11.AddItem i

Next i

Combo8.ListIndex = 0

Combo11.ListIndex = 0 Combo1.AddItem ("专业") Combo1.AddItem ("年级") Combo1.AddItem ("课程名称") Combo1.AddItem ("教材") Combo1.AddItem ("任课老师") 'Combo1.AddItem ("课时") Combo1.AddItem ("课程性质") Combo1.AddItem ("考试性质") Combo2.AddItem ("=") Combo3.AddItem ("专业") Combo3.AddItem ("年级") Combo3.AddItem ("课程名称") Combo3.AddItem ("教材") Combo3.AddItem ("任课老师") 'Combo3.AddItem ("课时") Combo3.AddItem ("课程性质") Combo3.AddItem ("考试性质") Combo4.AddItem ("=") Combo5.AddItem ("学期") Combo1.Text = ""

Combo2.Text = ""

Text1.Text = ""

Combo3.Text = ""

Combo4.Text = ""

Text2.Text = ""

Combo5.Text = ""

Combo6.Text = ""

Combo7.Text = ""

Combo8.Text = ""

Combo9.Text = ""

Combo10.Text = ""

Combo11.Text = ""

End Sub

7.1.2 打印统计

运行打印统计后可以按条件把符合条件的各种信息以报表形式罗列出来,各种信息还可以以打印出来或以报表形式保存。打印统计包括班级统计分析、档案统计分析、课程统计分析、成绩统计分析和交费统计分析五类。

班级统计分析(如:界面如图7-1-2)

(图7-1-2)

代码如下:

Private Sub Command1_Click()

Dim SQLoriginal As String

Dim SQLadd As String

Dim SQLorder As String

Dim strSql As String

SQLoriginal = "SELECT 年级,专业,人数,辅导员,备注FROM 班级表"

SQLadd = "WHERE 年级=年级AND 专业=专业"

SQLorder = ""

If Check1.Value = 1 And IsNumeric(Text1) Then

SQLadd = SQLadd + "and 年级='" + Text1 + "'"

End If

If Check2.Value = 1 And Not IsNull(Text2) Then

SQLadd = SQLadd + "and 专业='" + Text2 + "'"

End If

If Check3.Value = 1 And IsNumeric(Text3) Then

SQLadd = SQLadd + "and 人数='" + Text3 + "'"

End If

If Check4.Value = 1 And Not IsNull(Text4) Then

SQLadd = SQLadd + "and 辅导员='" + Text4 + "'"

End If

strSql = SQLoriginal + SQLadd + SQLorde

If Dat_Main.rsDat_Class.State = 1 Then

Dat_Main.rsDat_Class.Close

End If

Dat_Main.rsDat_Class.Open strSql

Dat_Class.Show vbModal

Text1.Text = ""

Text2.Text = ""

Text3.Text = ""

Text4.Text = ""

End Sub

Private Sub Command2_Click()

Unload Me

End Sub

Private Sub Form_Load()

Text1.Text = ""

Text2.Text = ""

Text3.Text = ""

Text4.Text = ""

End Sub

档案分析统计(如:界面如图7-1-3)

(图7-1-3)

代码如下:

Private Sub Command1_Click()

Dim SQLoriginal As String

Dim SQLadd As String

Dim SQLorder As String

Dim strSql As String

On Error Resume Next

SQLoriginal = "SELECT * FROM 学生档案 "

SQLadd = "WHERE 学号=学号 AND 姓名=姓名 " SQLorder = ""

If Check1.Value = 1 And IsNumeric(Text1) Then

SQLadd = SQLadd + "and 学号='" + Text1 + "'" End If

If Check2.Value = 1 And Not IsNull(Text2) Then

SQLadd = SQLadd + "and 姓名='" + Text2 + "'"

End If

If Check3.Value = 1 And Not IsNull(Text3) Then

SQLadd = SQLadd + "and 专业='" + Text3 + "'"

End If

If Check4.Value = 1 And IsDate(DTPicker1) Then

SQLadd = SQLadd + " and 出生年月= # " & DTPicker1.Value & "#" End If

strSql = SQLoriginal + SQLadd + SQLorde

If Dat_Main.rsDat_Strudent.State = 1 Then

Dat_Main.rsDat_Strudent.Close

End If

Dat_Main.rsDat_Strudent.Open strSql

Dat_Strudent.Show vbModal

Text1.Text = ""

Text2.Text = ""

Text3.Text = ""

End Sub

Private Sub Command2_Click()

Unload Me

End Sub

Private Sub Form_Load()

'Combo1.AddItem ("男")

'Combo1.AddItem ("女")

Text1.Text = ""

Text2.Text = ""

Text3.Text = ""

End Sub

课程统计分析(如:界面如图7-1-4)

(图7-1-4)

代码如下:

Private Sub Command1_Click()

Dim SQLoriginal As String

Dim SQLadd As String

Dim SQLorder As String

Dim strSql As String

SQLoriginal = "SELECT * FROM 课程表 "

SQLadd = "WHERE 专业=专业 AND 课程名称=课程名称 " SQLorder = ""

If Check1.Value = 1 And Not IsNull(Text1) Then

SQLadd = SQLadd + "and 专业='" + Text1 + "'"

End If

If Check2.Value = 1 And Not IsNull(Combo1) Then

SQLadd = SQLadd + "and 课程性质='" + Combo1 + "'" End If

'If Check3.Value = 1 And Not IsNumeric(Text2) Then

'SQLadd = SQLadd + "and 课时='" + Text2 + "'"

'End If

If Check4.Value = 1 And Not IsNull(Text3) Then

SQLadd = SQLadd + "and 课程名称='" + Text3 + "'" End If

strSql = SQLoriginal + SQLadd + SQLorde

If Dat_Main.rsDat_Grean.State = 1 Then

Dat_Main.rsDat_Grean.Close

End If

Dat_Main.rsDat_Grean.Open strSql

Dat_Grean.Show vbModal

Text1.Text = ""

Combo1.Text = ""

相关文档
相关文档 最新文档