版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
毕业设计(论文) 1第一章相关技术介绍 31.1客户机/服务器 31.2面向对象编程(OOP) 3 3第二章系统分析及工具选择 52.1系统及需求分析 2.1.1系统需求 52.1.2可行性分析 52.2数据库选择 8第三章系统概述 93.1总体设计 9 93.3系统的功能简介 3.3.1项目规划 3.3.2功能描述 3.4数据库设计 第四章系统功能模块设计及实现 4.1登录模块 4.2系统主界面 4.3课程管理 4.5班级课表 4.6考试成绩管理 4.7学生成绩查询 4.8班级成绩分析 4.9用户管理 2随着络时代的到来,作为网络的必要组成部分,PC机越来越为人们所应用,以完成各种各样的工作,这不仅提高了工作效率和使用计算机的水平,也作为我们整个社会生产提高的一个具体表现,在越来越多的人使用计算机来进行管理的同时,作为当前热门专业和科技前沿信息学院则更应充分发挥自身的优势,将各项工作都提高到一个更高的水平,因此,使用计算机程序和软件来不定管理学生成绩是必然而又必要的工作。目前,此项工作一直实行人工管理,由专人进行手工填写,修改,统计和查找学生成绩;又由于每个学生都非常重视自己的学习成绩,并且在成绩管理的过程中,从学生,任课教师到教务部门,此项工作又具有涉及面广,人数众多的特点,从而也就决定了工作人员在为学生提供服务,帮助和完成学校各项关于成绩管理工作的同时,人为误差和低效率的工作速度也在所难免,特别是为响应国家政策和满足社会需要,学院近几年实行扩在招生的政策以来,学生人数大幅度增多,同时,为更好地指导和教育学生的生活和学习,采用从选专业和变动班级的方法,这就使得人工的学生成绩管理工作变得更加繁重和难以满足学生的要求。使用计算机软件对学生的成绩管理不仅能够克服手工管理的缺点和弊病,大大提高了工作效率,节省了大量的人力,物力,使我们的学院的管理水平走上一个新的台阶,也给了我们这批计算机专业毕业生一个很好的实践锻炼机会,从而使我们在工作岗位中具有更高的专业素质和能力,同时,也进一步显示和证实了信息学院的计算机应用水平和普及程度。当代社会是一个数字化的社会,数字化的实现需要依赖一定的手段,于此系统相关的领域有Windows2000(WindowsNt后继操作系统)局域网,Client/Server工作模式,VisualBasic6.0,Access关系型数据库等;此系统在二维数据库的理论基础上,应用VisualBasic6.0数据库管理系统,使用规范的程序设计方法,运用实际数据验证,逐步分析的调试手段,并达到了预期的结果。3第一章相关技术介绍客户机/服务器模式简称C/S模式,局域网上三种工作模式(对等模式,文件服务器模式,客户机/服务器模式)中的一种,并不是一种特定的硬件产品或服务器技术,它是一种体系结构。Server是一个向请求进程提供服务的逻辑进程,它可以是一种进程,也可以是有多个分布进程所组成。向一个Server请求服务的进程称为该服务的Client,通信事物是由Server应按请求进程的要求执行服务并返回结果。Client和Server之间的通信可以涉及到许多机制如:局域网,广域网及操作系统中任务间的通一机器上。此外,一个Server可以同时又是另一个Server的Client,并向它请求服务。通常,若一台机器的主要任务是支持一个特定的Server进程,那么这个具体的机器(硬件)就常称为服务器 (Server)。Server既可指Server进程(软件),也可以指一个具体的机器(硬件),对Client也是如Client/Server模式将处理功能分为两部分,一部分(前端)由Client处理,另一部分(后端)样有利于全面发挥各自的计算能力,可以分别对Clie要承担应用方面的专门任务,而Server端则主要用于数据处理。这种C/S模式还能给用户提供一个理想的分布环境,消除了不必要的网络传输负担。60年代末期,为应付当时日趋严重的“软件危机”,人们提出了结构化程序设计方法。结构化程序设计一定程度上缓解了“软件危机”,但并没有彻底解决。70年代末80年代初的面序设计是一种基于结构分析,以数据为中心的程序设计方法。传统上,编程时是把程序和数据严格区分开的。而OOP方法却把二者统一到一个可重用的单元中,称为类(CLASS),就象是C语言中的结构或PASCAL的记录,但它除了包含数据(叫做属性)之外,还包含过程(在OOP中叫做方法),你可以用定义特殊结构或记录类型变量的方法来实例化(即生成一个实例)一个类。实例化的类被称作对象(object)。因为对象中的代码可以像变量一样进行复制和访问,所以能自动实现事件驱动编程方式是在事件驱动的操作系统(Windows)下的软件开发方式。在非可视化的程序开发环境中,当你要写一个过程时,必须找处所有执行该过程的地方。用来保证当调用它,也只4有在调用它时,它才执行。事件驱动基本思想时当你的程序运行时,它只做了一些初始化和准备工作,然后就停下来。用户将看着它,而它却不做任何事,只有用户执行某个操作——单击鼠标,选择菜单等类似操时程序才会响应,这是因为程序员不再控制程序而由用户来控制。程序员把代码写成叫做事件的小块,它告诉程序“如果单击这个按钮,那么就执行这个过程,如果用户选择哪个菜单项,就执行哪个过程。”程序员的责任是在某些控件禁止一些不能使用的选项,以保证程序正确52.1.1系统需求(1)由于操作人员的计算机知识普遍较差,要求有良好的人机界面;(3)原始数据修改简单方便,支持多条件修改(4)方便的数据查询,支持多条件查询;(5)在相应的权限下,删除数据方便简单,数据稳定性好;(6)数据计算自动完成,尽量减少人工干预;2.1.2可行性分析的微机都是PIII以上的机器,在存储量、速度方面都能满足数据库运行的要求。在技本系统的设计是在WindowsXP中文版操作系统环境下,使用VisualBasic6.0中文版开发成功的。数据库是MIS中的重要支持技术,在MIS开发过程中,如何选择数VisualBasic是一种可视化的、面对对象和条用事件驱动方式的结构化高级程序可以与Windows的专业开发工具SDK相媲美,而且程序开发人员不必具有C/C++编程基础。在VisualBasic环境下,利用事件驱动的编程机制、新颖易用的可视化设计工具,使用Windows内部的应用程序接口(API)函数,以及动态链接库(DLL)、动态数据交换发出Windows环境下功能强大、图形界面丰富的应用软件系统。6总的来说,VisualBasic具有以下特点:用传统程序设计语言设计程序时,都是通过编写程序代码来设计用户界面,在设计过程中看不到界面的实际显示效果,必须编译后运行程序才能观察。如果对界面的效果不满意,还要回到程序中修改。有时候,这种编程-编译-修改的操作可能要反复多次,大大影响了软件开发效率。VisualBasic提供了可视化设计工具,把Windows界面设计的复杂性“封装”起来,开发人员不必为界面设计而编写大量程序代码。只需要按设计要求的屏幕布局,用系统提供的工具,在屏幕上画出各种“部件”,即图形对象,并设置这些图形对象的属性。VisualBasic自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分代码,从而可以大大提高程序设计的效率。4.0版以后的VisualBasic支持面向对象的程序设计,但它与一般的面向对象的程序设计语言(C++)不完全相同。在一般的面向对象程序设计语言中,对象由程序代码和数据组成,是抽象的概念;而VisualBasic则是应用面向对象的程序设计方法(00P),把程序和数据封装起来作为一个对象,并为每个对象赋予应有的属性,使对象成为实在的东西。在设计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上,VisualBasic自动生成对象的程序代码并封装起来。每个对象以图形方式显示在界面上,都是可视的。VisualBasic是在BASIC语言的基础上发展起来的,具有高级程序设计语言的语句结构,接近于自然语言和人类的逻辑思维方式。VisualBasic语句简单易懂,其编辑器支持彩色代码,可自动进行语法错误检查,同时具有功能强大且使用灵活的调试器和编译器。(.EXE),脱离VisualBasic环境,直接在Windows环境下运行。VisualBasic通过事件来执行对象的操作。一个对象可能会产生多个事件,每个事件都可以通过一段程序来响应。例如,命令按钮是一个对象,当用户单击该按钮时,将产生一个“单击“(CLICK)事件,而在产生该事件时将执行一段程序,用来实现指定的操作。在用VisualBasic设计大型应用软件时,不必建立具有明显开始和结束的程序,而是编写若干个微小的子程序,即过程。这些过程分别面向不同的对象,由用户操作引发7访问数据库:VisualBasic具有强大的数据库管理功能,利用数据控件和数据库管理窗口,可以直接建立或处理MicrosoftAccess格式的数据库,并提供了强大的数据存储和检索功能。等,这些数据库格式都可以用VisualBasic编辑和处理。VisualBasic提供开放式数据连接,即ODBC功能,可通过直接访问或建立连接的方式使用并操作后台大型网络数据库,如SQLServer,Oracle等。在应用程序中,可以使用结构化查询语言SQL数据标准,直接访问服务器上的数据库,并提供了简单的面向对象的库操作指令和多用户数据库访问的加锁机制和网络数据库的SQL的编程技术,为单机上运行的数据库提供了SQL网络接口,以便在分布式环境中快速而有效地态地链接到另一种应用程序中,使两种完全不同的应用程序建立起一条动态数据链路。当原始数据变化时,可以自动更新链接的数据。VisualBasic提供了动态数据交换的编程技术,可以在应用程序中与其他Windows应用程序建立动态数据交换,在不同的应对象的链接与嵌入(OLE)将每个应用程序都看做是一个对象(object),将不同的对象动画、文字等各种信息的集合式的文件。OLE技术是Microsoft公司对象技术的战略,应用程序一体化的技术。利用OLE技术,可以方便地建立复合式文档(compounddocument),这种文档由来自多个不同应用程序的对象组成,文档中的每个对象都与原来的应用程序相联系,并可执行与原来应用程序完全相同的操作。VisualBasic是一种高级程序设计语言,不具备低级语言的功能,对访问机器硬件入到VisualBasic应用程序中,可以像调用内部函数一样调用其他语言外,通过动态链接库,还可以调用Windows应用程序接口(API)函数,实现SDK所具8Access是微软公司推出的基于Windows的桌面关系数据库管理系统(RDBMS),是Office系列应用软件之一。它提供了表、查询、窗体、报表、页、宏、模块7种用来面设计、报表生成等操作规范化;为建立功得普通用户不必编写代码,就可以完成大部分数据管理的任务。Access是一种关系型数据库管理系统,其主要特点如下:(1)存储方式单一Access管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都存放在后缀为(.mdb)的数据库文件种,便于用户的操作和管理。Access是一个面向对象的开发工具,利用面向对象的方式将数据库系统中的各种Access是一个可视化工具,是风格与Windows完全一样,用户想要生成对象并应Access基于Windows操作系统下的集成开发环境,该环境集成了各种向导和生成利用Access强大的DDE(动态数据交换)和OLE(对象的联接和嵌入)特性,可报表和窗体等。Access还可以将程序应用于网络,并与网络上的动态数据相联接。利用数据库访问页对象生成HTML文件,轻松构建Internet/Intranet的应用。因此我们选用了微软公司的Access作为后台数据库平台,来进行该系统的后台数9第三章系统概述的实用性和先进性。实际上,由于院教务科学生成绩管理工作与院学生管理中和成绩相关的工作有着紧密的联系,程序本着统筹兼顾,从总体考虑将以往两个部门工作中重复的操作有机结合起来,并为以后程序功能扩展提供接口。学生成绩管理系统初订了三种方案:方案一:采用星形拓扑局域网结构,由服务器、工作站、集线器、计算机、打印机组成,服务器上运行数据库及系统管理程序SQLServer6.5,前端(客户端)采用PowerBuilder7.0为程序设计语言。方案二:采用单机上运行学生成绩管理系统软件,采用VisualBasic6.0程序设计语言和本地数据库。方案三:采用星形拓朴局域网结构,由服务器务、工作站、集线器、计算机、打印机组成,服务器上运行数据库及系统管理和序access2000,前端(客户机)用VisualBasic6为程序设计语言。以上三种方案中都有采用VisualBasic6.0程序设计语言,一方面,VisualBasic6.0是目前流行和好用的前端开发工具,适合于毕业生以此作为做毕业课题的工具,另一方面,由于社会需求量大,掌握了此工具的学生将会有更多的机会来实现自己的想法和目标。对于方案一,鉴于学院目前的自身条件,采用在单机上开发和运行成绩管理系统软件,缩短了开发时间的同时也降低了开发的难度,因此,不利于学生更好地煅炼和实践,最重要的是不利于程序向网络应用扩展,不久的将来,计划成绩管理系统具有供学生在计算机网络上查询的功能。不符合当前的计算机应用的形势。方案二和方案三的不同之处在于使用了不同的数据库管理系统.为了最终实现目标系统,必须将一些功能复杂的模块与分解成若干子模块,并确定这些子模块之间的关系。经过分解之后使每个功能对大多数程序员而言是明显易懂得,这样也增加了系统的可维护性。3.3系统的功能简介本系统主要可以实现以下的管理功能:班级管理、学生课程管理、学生成绩管理、用户管理等等。学生课程管理系统是一个典型的数据库应用程序,由班级管理、学生课程管理、学生(1)课程管理模块(CTRL+C)该模块的主要任务是维护系统的正常运行和安全性设置,包括课程库(快捷键:捷键:CTRL+T)等等。这四个功能模块各自独立,完成学校的全部学生的课程安排及管该模块的功能是实现对全校学生的成绩管理工作,包括:成绩库管理(快捷键:这三个功能模块各自独立,完成学校的全部学生的成绩管理。该模块的主要功能是实现对系统的维护工作,包括用户管理(快捷键:CTRL+C)、退出系统等(快捷键:CTRL+D)、功能,从而方便管理用户和退出该系统,对该系统起主要描述系统的模块及其功能:班级成绩分析学生成绩查询成绩库管理班级课表课程安排查询课程安排课程库管理学生课程成绩管理系统课程管理成绩管理3.4数据库设计字段名称数据类型自动编号文本文本日期/时间备注字段名称数据类型文本文本文本日期/时间文本文本备注字段名称数据类型文本文本数字数字文本备注表2-4CourseSelect表:字段名称数据类型自动编号文本文本文本文本表2-5Department表:字段名称数据类型文本文本文本文本表2-6Publish表:字段名称数据类型自动编号文本文本日期/时间备注字段名称数据类型自动编号文本文本数字字段名称数据类型文本文本文本文本日期/时间文本字段名称数据类型文本文本文本备注本章主要内容为本系统的运行界面以及主要界面的源代码本界面的主要功能是为了对系统进行安全性管理,本系统的用户名和密码保存在USER表中,用户可以选择不同的登录编号及密码。口口登录教学信息管理版权所有盗版必究代码实现:strUserID=Replace(TristrPassword=Replace(TriIfstrUserID=""ThenMsgBox"用户名不能为空,请输入用户名!",,"登录错误"ElseIfstrPassword=""ThenMsgBox"密码不能为空,请输入密码!",,"登录错误"EndIfstrSQL="SELECT*FROMUSERSWHEREUserID='"'&strUserID&""Ifrs.EOFThenMsgBox"用户名不存在或密码错误!",,"登录失败"UserName=rs("UserNameEndIfIfCount>=3ThenMsgBox"超过登录次数,无权登录本系统!",,"登录失败"EndIf主控模块起着连接各个程序的作用,通过此模块可以方便的进入其他各子模块中。运行界面如下所示:图4-2系统主界面代码实现:Caption="课程管理系统-["&UserName&"]"本界面显示的是课程管理信息,包括课程的安排、学分、任课老师及课程的说明。课程管理O口区学时数说明▶数据结构4必修计算机原理4张浩必修大学英语5王冰必修软件工程4催冬华必修高等数学5张洪宾必修电子电工技术4李晓明必修邓论3原林虎选修军事基础3东方选修c语言5刘玉海必修汇编4王跃龙必修5梁小生必修H州册除①)修改M)添加(A)保存(S)退出Q)课程编号说明学分数学时数欣图4-3课程管理界面代码实现:DimConnAsADODB.ConnectionDimWithEventsrsAsADODimstrSQLS,strCourseIDS,strCourseName$,intCredit!,intPeriod!,strTeacher$,strDesc$strCourselD=Replace(TristrCourseName=Replace(TrimstrTeacher=Replace(TIfstrCourseID=""ThenMsgBox"课程编号不能为空!",,"输入错误"ElselfstrCourseName=""ThenMsgBox"课程名称不能为空!",,"输入错误"ElselfintCredit=0ThenMsgBox"该课程学分不能为空!",,"输入错误"ElselfintPeriod=0ThenElselfstrTeacher=""ThenMsgBox"任课老师不能为空!",,"输入错误"EndIfstrSQL="SELECT*FROMCourseWHERECourselD='"&strCoMsgBox"该课程编号已经存在,请重新输入!"EndIfrs("CourseID").Value=strCrs("CourseName").Value=strCrs("Credit").Value=inrs("Period").Value=intrs("Teacher").Value=strTrs("Description").ValueEndIfIfrs.EOFAndrs.RecordCount>0ThenEndIfIfNotrs.BOFThenrs.MovePreviousIfrs.BOFAndrs.RecordCount>0ThenEndIfDimcmdUpdateAsADDimstrSQLS,strCourseID$,strCourseName$,intCredit!,intPeriod!,strTeacher$,strDesc$strCourseID=Replace(TristrCourseName=Replace(TrimstrTeacher=Replace(TIfstrCourseID=""ThenMsgBox"课程编号不能为空!",,"输入错误"ElselfstrCourseName=""ThenMsgBox"课程名称不能为空!",,"输入错误"ElselfintCredit=0ThenMsgBox"该课程学分不能为空!",,"输入错误"ElselfintPeriod=0ThenMsgBox"该课程学时数不能为空!",,"输入错误"ElselfstrTeacher=""ThenMsgBox"任课老师不能为空!",,"输入错误"EndIfIfstrCourselDrs("CourselD")ThenstrSQL="SELECT*FROMCourseWHERECourseID='"&strCourseID&";"IfNotrsValid.EOFThenMsgBox"该课程编号已经存在,请重新输入!"EndIfSetrsValid=Nothing级联更新strSQL=strSQL&"WHERECourselD='"&rs("CourselD")&";"strSQL=strSQL&""WHERECourselD='"&rs("CoEndIfrs("CourselD").Value=strCrs("CourseName").Value=strCrs("Credit").Value=inrs("Period").Value=intrs("Teacher").Value=strTrs("Description").ValuePrivateSubrs_MoveComplete(ByValadReasonAsADODB.EventReasonEnum,_ByValpErrorAsADODB.Error,adStatusAsADODB.EventStatusSetConn=NewADODB.C.Columns(0).Caption="课程编号".Columns(1).Caption=".Columns(4).Caption="任课老师"PrivateSubForm_Unload(CancelAsInte显示课程的安排、班级、上课时间、上课地点。在此处可以课程安排信息。课程安排O口×班级编号班级信息班级编号课程信息学分4任课老师谭有为上课教室所属院系信息工程系班主任赵成上课时间州册除①)上课地点▶数据结构周二下午4谭有为计算机原理周一下午4张浩大学英语周三下午5王冰软件工程周四下午4催冬华高等数学周四下午5张洪宾电子电工技术周五下午4李晓明邓论周五上午3原林虎军事基础周四上午3东方c语言周三上午5刘玉海代码实现:DimConnAsADODB.ConnectionDimWithEventsrsAsADODimcmdUpdateAsADDimrsCheckAsADODDimstrSQL$,strClaIfcmbClass.ListIndex<0ThenMsgBox"请选择一个班级!"EndIfIflstCourse.ListIndex<0ThenMsgBox"请选择一门课程!"EndIfstrClassRoom=Replace(TrstrClassDate=Replace(TrIfstrClassRoom=""ThenMsgBox"上课教室没有指定!",,"输入错误"ElselfstrClassDate=""ThenMsgBox"上课时间没有指定!",,"输入错误"EndIfstrSQL="SELECT*FROMCourseSelectWHEREMsgBox"该班级已经安排了该课程,不要重复安排!"EndIfstrSQL="INSERTINTOCourseSelect(CourseID,ClastrSQL=strSQL&"VALUES("&lstCourse.TextstrSQL=strSQL&strClassRoom&","&strClassDate&");"Ifrs.EOFOrrs.BOFThenExitSubIfrs.RecordCount>0Thenrs.MoveFirstIfrs.RecordCount>0Thenrs.MoveLastIfrs.EOFOrrs.BOFThenExitSubtxtClassRoom.Text=rs("ClassRtxtClassDate.Text=rs("ClassIfNotrs.EOFThenrs.MoveNextIfrs.EOFAndrs.RecordCount>0ThenEndIfIfNotrs.BOFThenrs.MovePreviousIfrs.BOFAndrs.RecordCount>0ThenEndIfDimcmdUpdateAsADDimstrSQL$,strClaIfrs.EOFOrrs.BOFThenExitSubstrClassRoom=Replace(TristrClassDate=Replace(TrIfstrClassRoom=""ThenMsgBox"上课教室没有指定!",,"输入错误"ElseIfstrClassDate=""ThenMsgBox"上课时间没有指定!",,"输入错误"IfcmbClass.ListCount>0ThencmbDimrsCourseAsADODBSetrsCourse=NewADODB.RecordsetIstCourse.AddltemrsCourse("CIflstCourse.ListCount>0ThenlstCourse.ListIfrs.State<>adStateClosedThenrs.ClosestrSQL="SELECTCourseSelect.ID,CourseName,ClassRostrSQL=strSQL&"WHERECourse.CourselD=CourseSelect.CourseID"strSQL=strSQL&"ANDCourseSelect.ClassID="&cmbClass.Text.Columns(1).Caption="课程名称".Columns(2).Caption="上课地点".Columns(5).Caption="学时数".Columns(6).Caption="任课老师"SetrsClass=NewADODB.RecordsetstrSQL=strSQL&"WHERElblDepartName=rsClass(IblBeginDate=Str(rsClass("BEndIflblCount=Str(rsClassstrSQL="SELECT*FROMCourseWHERECourseID="&lstCourse.Text&";"rsCourse.OpenstrSQL,Conn,1,1IfNotrsCourse.EOFThenlblCredit=Str(rsCourseIblPeriod=Str(rsCourse("PIblTeacher=rsCourse("=EndIfPrivateSubrs_MoveComplete(ByValadReasonADODB.Error,adStatusAsADODB.EventStatusEnum,ByValpRecordsetAsADODB.Recordset)课程安排查询:通过此界面查询课程的安排:课程安排查询02级信息管理1班代码实现:DimConnAsADODB.ConnectionDimWithEventsrsAsADODB.ReSetConn=NewADODB.ConDimrsCourseAsADODB.RecordsetSetrsCourse=NewADODB.RecordsetWhileNotrsCourse.EOFcmbCourse.AddltemrsCourIfcmbCourse.ListCount>0ThencmbCoDimrsCourseAsADODBSetrsCourse=NewADODB.RecordsetstrSQL="SELECT*FROMCourseWHERECoursIfNotrsCourse.EOFThenlblCredit=Str(rsCourselblPeriod=Str(rsCourse(IblTeacher=rsCourse(EndIfIfrs.State<>adStateClosedThenrs.strSQL="SELECTClassName,ClassRoom,ClassDate"strSQL=strSQL&"FROMCourseSelect,Class"strSQL=strSQL&"WHEREClass.ClassID=CourseSelect.ClassID"strSQL=strSQL&"ANDCourseSelect.CourseID='"'&cmbCourse.TextSetdgCourseSelect.Da课程名称上课地点课程名称上课地点上课时间学分学时数任课老师▶数据结构周二下午4谭有为计算机原理周一下午4张浩大学英语周三下午5王冰软件工程周四下午4催冬华高等数学周四下午5张洪宾电子电工技术周五下午4李晓明邓论周五上午3原林虎军事基础周四上午3东方c语言周三上午5刘玉海汇编周二上午4王跃龙周一上午5梁小生文学周一上午3朱庆芳班级编号退出Q)班级信息班级编号040201班主任赵成班级名称02级信息管理1班入学日期2004-9-1所属院系信息工程系人数5图4-5班级课表界面代码实现:SetConn=NewADODB.ConneDimrsClassAsADODSetrsClass=NewADODB.RecordsetWhileNotrsClass.EOFcmbClass.AddItemrsCIfcmbClass.ListCount>0ThencmbClass.ListInDimrsClassAsADODSetrsClass=NewADODB.RecordsetstrSQL=strSQL&"WHEREClass.DepartID=Department.DepartID"strSQL=strSQL&"ANDClassID="'&cmbClass.Text&rsClass.OpenstrSQL,Conn,1,1IblDepartName=rsClass("D"";Ifrs.State<>adStateClosedThestrSQL="SELECTCourseSelect.ID,CourseName,ClassRoom,ClassDate,Credit,Period,TeacherstrSQL=strSQL&"WHEREC考试成绩查询选择课程编号、开课班级、能显示相应的班级信息,在此模块可以添加和修改所选课程的成绩。OO口区班级编号040201班级名称02级信息管理1班所属院系信息工程系班主任赵成姓名杜威赵鸭马丽徐洁孙晓红图4-6考试成绩管理界面课程信息学分4任课老师谭有为学号040201册除①)学号考试成绩管理代码实现:DimWithEventsrsAsADODimcmdUpdateAsADODB.CommandDimrsCheckAsADODB.RecordsetIfcmbCourse.ListIndex<0ThenMsgBox"请选择一门课程!"EndIfIflstClass.ListIndex<0ThenMsgBox"请选择一个班级!"EndIfstrStudentID=Replace(TrimtxtScore.Text=Replace(Trim(txtScoreIfstrStudentID=""ThenMsgBox"请输入学生学号!",,"输入错误"ElselftxtScore.Text=""ThenMsgBox"请输入考试成绩!",,"输入错误"ElselfintScore<0OrintScore>100ThenMsgBox"考试成绩输入不合格,请重新输入!",,"输入错误"EndIfIfrsCheck.EOFThenMsgBox"该该学生不属于这个班级!"EndIfMsgBox"该生成绩已经录入,不要重复输入!"EndIfstrSQL=strSQL&"VALUES(""&cmbCourse.Text&"',"&SetcmdUpdate=NewADODB.DimcmdUpdateAsADIfrs.EOFOrrs.BOFThenExitSubSetcmdUpdate=NewADODB.CommandIfrs.RecordCount>0Thenrs.MoveFirstIfrs.RecordCount>0Thenrs.MoveLastIfrs.EOFOrrs.BOFThenExitSubtxtStudentID.Text=rs("StudenttxtScore.Text=Str(rs("ScoreIfNotrs.EOFThenrs.MoveNextIfrs.EOFAndrs.RecordCount>0ThenEndIfIfNotrs.BOFThenrs.MovePreviousIfrs.BOFAndrs.RecordCount>0ThenEndIfDimcmdUpdateAsADDimrsCheckAsADODIfcmbCourse.ListIndex<0ThenMsgBox"请选择一门课程!"EndIfIflstClass.ListIndex<0ThenMsgBox"请选择一个班级!"EndIfstrStudentID=Replace(TrimtxtScore.Text=Replace(Trim(txtScore.IfstrStudentID=""ThenMsgBox"请输入学生学号!",,"输入错误"ElselftxtScore.Text=""ThenMsgBox"请输入考试成绩!",,"输入错误"ElselfintScore<0OrintScore>100ThenMsgBox"考试成绩输入不合格,请重新输入!",,"输入错误"EndIfstrSQL=strSQL&"SETstrSQL=strSQL&"WHEREid="&rs("ID").ValueSetcmdUpdate=NewADODB.rsClass.OpenstrSQL,Conn,1,1IfNotrsClass.EOFThenlblClassName=rsClass(lblBeginDate=Str(rsClassEndIfstrSQL="SELECTCount"";rsClass.OpenstrSQL,Conn,1,1lblCount=Str(rsClass("StuSetrsClass=NewADODB.RecordsetstrSQL="SELECT*FROMCourseSelectWHERECourrsClass.OpenstrSQL,Conn,1,1IstClass.AddltemrsClass("ClassID").ValueIflstClass.ListCount>0ThenlstCla一个人信息性别男所属院系信息工程系班主任赵成▶44图4-7学生成绩查询界面代码实现:DimConnAsADODB.ConnectionSetConn=NewADOIfrs.State
adStateClosedThenrs.CloseDimrsClassAsADODB.RecordsetIfrs.StateadStateClosedThenrs.ClosestrSQL="SELECTCourseName,Score,Credit,TeacherFROMstrSQL=strSQL&"WHEREScore.CourselD=Course.CourseID"strSQL=strSQL&"ANDScore.StudentID='"&t.Columns(1).Caption.Columns(3).Caption="任课老师"DimrsStudentAsADODSetrsStudent=NewADODB.RestrSQL="SELECTStudent.*,ClassNstrSQL=strSQL&"ANDClass.DstrSQL=strSQL&"ANDStudeIfNotrsStudent.EOFThenIblStudentID=rsStudent("StlblDepart=rsStudent("EndIfrsScore.OpenstrSQL,Conn,1,1lblMax=If(IsNull(rsScore("Max").Value),"",Str(rsSlblMin=IIf(IsNull(rsScore("Min").Value),"",Str(rsSlblBJG=If(IsNull(rsScore("BJG").Value),"",Str(rs此模块用于班级成绩分析,输入班级的编号,再选择课程编号可以显示班级的整个成绩情况:用于班级评比:退出Q)学号姓名成绩退出Q)学号姓名成绩▶杜威赵鹏马丽徐洁课程名称计算机原理图4-8班级成绩分析界面代码实现:Conn.OpenConnStringSetdgScore.DataSource=SetrsClass=NewADODB.RecordsetstrSQL="SELECT*FROMClass"cmbClass.AddltemrsCIfcmbClass.ListCount>0ThencmbrsCourse.OpenstrSQL,Conn,1,1lstCourse.AddItemrsCourseIflstCourse.ListCount>0ThenlstCoursIfrs.State
adStateClosedThenrs.ClosestrSQL="SELECTScore.ID,Score.StudentIstrSQL=strSQL&"WHEREStudent.strSQL=strSQL&"ANDScore.CourseIDstrSQL=strSQL&"ANDStudent.ClassID='"&cmbClass.Text&"".Columns(2).Caption.Columns(3).CaptionDimrsCourseAsADODBSetrsCourse=NewADODB.RecordsetstrSQL="SELECT*FROMCourseWHERECourseID='"&lstCourse.Text&";"IfNotrsCourse.EOFThenlblCourselD=rsCourse("IblCourseName=rsCourse("ColblCredit=Str(rsCourseEndIfDimrsCourseAsADODBSetrsCourse=NewADODB.RecordsetstrSQL="SELECTCount(*)asRS,Max(Score)asMax,Min(Score)asFROMScoreWHERECourseID='"&lstCIfNotrsCourse.EOFThenIfintRS>0ThenIblAvg=Str(rsCourseEndIfEndIfrsCourse.OpenstrSQL,Conn,1,1IfNotrsCourse.EOFAndintRS>0ThenEndIf用户管理界面,可以管理用户:学生管理员说明用户名图4-9用户管理界面代码实现:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 烟台理工学院《程序设计基础》2021-2022学年第一学期期末试卷
- 许昌学院《虚拟现实技术实验》2022-2023学年第一学期期末试卷
- 财务年度预算方案计划
- 徐州工程学院《植物压花实践艺术》2021-2022学年第一学期期末试卷
- 徐州工程学院《文案设计》2022-2023学年第一学期期末试卷
- 排水管道施工质量保证措施
- 班级文学创作与交流活动计划
- 落实仓库消防安全管理的工作方案计划
- 闽教版三年级上册英语单词
- 绩效管理体系的持续改进计划
- (完整)100道两位数加减两位数口算题(难)
- 密闭式静脉输液口述词(四篇)
- 口干问卷调查表
- 农药安全科学使用技术
- 低压电工实用技术-常用电工工具的使用
- 哈尔滨工业大学高等数学期末考试试题和答案
- 钢筋笼吊装作业安全监理细则
- 翁敏-孕期营养与膳食指导
- 人教版鄂教版六年级科学上册知识要点
- 实验报告 配合物的生成、性质和应用
- 雅思阅读必看完整课件
评论
0/150
提交评论