学生学籍管理系统课程设计_第1页
学生学籍管理系统课程设计_第2页
学生学籍管理系统课程设计_第3页
学生学籍管理系统课程设计_第4页
学生学籍管理系统课程设计_第5页
已阅读5页,还剩29页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、课程设计报告课程名称 数据库系统原理 设计题目 学生学籍管理系统 学生姓名 学 号 专业班级 指导教师 2012 年 12 月 22 日 目录1.系统概述31.1开发目的和背景31.2开发环境和技术32.系统分析.5 2.1系统需求分析.5 2.2功能需求分析52.3.划分功能模块73.数据流程分析83.1数据流程图83.2数据流程字典94.数据库设计 12 4.1概念结构设计.12 4.2逻辑结构设计13 4.3物理结构设计145.应用程序设计16 5.1用户界面设计及相关程序代码16 5.2运行结果286.心得体会327.参考文献331. 系统概述 1.1开发目的和背景这次实验的主要目标是

2、能利用课程中学习到的数据库知识与技术较好地开发设计出数据库应用系统,去解决各行各业信息化处理的要求。本实验主要在于实现一个通用学籍管理系统,完成对学生学籍信息的增加、删除、修改、查询、显示全部学生学籍信息等功能。数据库应用设计是指对于一个给定的应用环境,构造最优的数据库模式,建立数据库及其应用系统,有效存储数据,满足用户信息要求和处理要求。为了使数据库应用系统开发设计合理、规范、有序、正确、高效进行,现在广泛采用的是工程化6个阶段开发设计过程与方法,它们是需求分析阶段、概念结构设计阶段、逻辑结构设计阶段、物理结构设计阶段、数据库的实施、数据库系统运行与维护阶段。 1.2开发环境和技术 系统开发

3、环境为局域网或校园网网络环境,网络中有一台安装Windows 2000 Server 的服务器,服务器上安装 SQL Server 2000。该软件是在Windows 2000 Advanced Server + Visual Basic 6.0 + SQL Server 2000的环境下完成的。下面就对这些开发工具进行介绍121 Visual Basic 6.0微软公司的Visual Basic 6.0是Windows应用程序开发工具,是目前最为广泛的、易学易用的面向对象的开发工具。Visual Basic提供了大量的控件,这些控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化

4、了界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。利用VISUAL BASIC 程序设计语言,可以很方便地设计出在WINDOWS环境下运行的应用程序。故而,实现本系统VB是一个相对较好的选择。1211 Visual Basic的编程特点Visual Basic语言的出现为Windows下的编程提出了一个新概念,利用Visual Basic的动态数据交换、对象的链接和嵌入、动态链接库、ActiveX技术可以很方便地设计出功能强大的应用程序。利用Visual Basic语言编程有以下几个特点:1.可视化程序设计在Visual Basic中开发的应用程序,不但有丰富的图形界面,同时由用户为

5、开发图形界面添加的代码真是少而又少,因为在设计图形界面的过程中只需设置 ActiveX控件的属性即可。2.强大的数据库和网络功能随着Visual Basic 语言的向前发展,它在数据库和网络方面的功能优势就愈加明显,利用Visual Basic 中的ODBC开放式的数据库访问技术可以很方便地开发出自己的数据库应用程序;利用 Visual Basic自带的可视化数据管理器和报表生成器,完全可以在Visual Basic就完成数据库的开发工作。3其它特性在Visual Basic以前的版本中,由于仍然摆脱不了解释执行的代码运行机制,所以在相当的程度上制约了 Visual Basic 的发展。从Vi

6、sual Basic5.0版本开始,在Visual Basic 中制作的应用程序都改变为编译执行,使得Visual Basic的代码效率有了很大的提高,同时执行的速度 也加快了解30%(同Visual Basic4.0相比)。当然在 Visual Basic中还有其它特性,例如:l 面向对象的编程语言;l 结构化程序设计;l 事件驱动的程序设计:在传统的或“过程化”的应用程序中,应用程序自身控制了执行哪一部分代码和按何种顺序执行代码。从第一行代码执行程序并按应用程序中预定的路径执行,必要时才会调用过程。在事件驱动的应用程序中,代码不是按预定的路径执行,而是在响不同的事件时执行不同的代码片段。事

7、件可以由用户操作触发、也可以由来自操作系统或其它应用程序的消息触发、甚至由应用程序本身的消息触发。这些事件的顺序,决定了代码执行的顺序,因此应用程序每次运行时所经过的路径都是不同的。l 支持动态链接库;l 应用程序之间的资源共享。 1212数据库开发中的三大工具Visual Basic在数据库应用程序的开发领域中,提供包含数据管理(DataManager),数据控件(Data Control)以及数据编程对象(数据访问对象(DAO)、远程数据对象(RDO)和ActiveX数据对象(ADO)等功能强大的工具,协助设计人员轻松的连接数据库文件,并访问其中的数据,在功能方面与其他一些专业数据库软件(

8、如FoxPro,Micosoft Access等)不相上下。2. 系统分析2.1系统需求分析 本系统的设计模拟一般学生学籍管理内容,经过充分地系统调研,发现本系统应包括学生信息、课程信息、学生专业信息等需管理信息。进一步发现信息实体间管理信息有:专业分期课程计划、学生选课及各科成绩统计等内容。实现一个通用学籍管理系统,完成对学生学籍信息的增加、删除、修改、查询、显示全部学生学籍信息等功能。(1)本系统需要管理的实体信息班级信息:班号、班级名称、班主任工号等;学生基本信息:学号、类别、姓名、性别、出生日期、电话、入校日期、家庭地址、备注等;专业信息:专业编号、专业名称、创办年份、学生规模等;学期

9、信息:编号、学期名等;课程基本信息:课程号、课程名、类型、学分等毕业信息:毕业证号、性别、学号、姓名、毕业时间、已修学分、需修学分等。(2)本系统要管理的实体联系信息学生入学时需录入登记,并选定一专业,每学期注册后即可选课(分必修课和选修课),每位学生选多门课,一门课应有多名学生修读。学生考试后,要登记考试成绩。专业分学期课程计划情况(即专业教学计划),要反映是否必修课、是否学位课、是否考试课及备注信息。学生各科成绩需要登记,统计排名。学生毕业需计算学分,审核资格(学分、学习期数是否达到要求),顺利毕业的颁发毕业证。学生在校表现根据实际情况,进行奖惩记录。2.2 功能需求分析本系统开发的目的,

10、就是通过系统开发,实现课程管理有关工作的计算机化,提高关键环节的处理速度和规范化,并对有关的工作进行集成和重组,通过网络系统实现集中管理、分散操作,提高选课管理工作的质量和效率。通过对学校的选课及成绩管理工作进行实际调查,学生可以自由选择课程、选老师,学生注册的行政班和教学班是游离的,开发工作需要涉及任课教师、学生、管理员(教务工作人员)三种用户。学生需求在学校规定的选课期间,学生通过任何一台连接因特网计算机的浏览器就能进行网上选课。学生以用户名和密码进入选课系统。选课系统会根据用户名和密码自动识别所在的系,然后显示出与学生有关的课程列表。系统必须控制某一门课程在学期间只能选一次。在学生选课时

11、能自动进行有关逻辑判断,如:是否选课超过了规定的门数,是否选择了不符合预修条件的课程,是否选择的课程超过此课程最大选择人数,只有符合要求的选择才能选课成功。学生可以更改部分个人信息如密码,电话号码等;学生可以查询已修课程成绩和已选课程信息。教师需求任课教师登录后,可以查看自己所教课程的课程表;对于同一学期内有多门课程的教师,需要选择具体课程后,才能查看已选这门课程的学生信息:期末,教师可以上传这些学生的成绩。管理员需求系统管理员登录后,可以对学生,教师,课程,教学班级的基本信息进行添加,修改,删除等工作。课程安排是选课的核心,只有按照实际的教学情况安排出每个学期必修和选修的课程,才能保证选课的

12、顺利进行。在每学期,学生选课前,各院系管理员必须在该院系培养方案中录入本学期可以开设的课程和排课安排,对于需要预修条件的课程,需要设置好预修条件。基础部管理员负责公共课的课程开设和排课安排。其中排课及教学班级的安排上要保证同一个教师在同一时间只能上一门课程;同一个教室同一时间也只能开一门课程。功能描述:添加修改删除学生信息:用户进入到主界面后,选择学生信息修改,会弹出一对话框,若想添加新的学生信息,可点击插入记录按钮,用户可在各对应的框内填写所要填写的信息。当然这些不能胡乱的填写,要根据日常情况来填写。若想把那些已不在的学生删除掉,可点击删除记录按钮。用户填写所要删除学生的学号,点击确定。若该

13、学生的学籍信息不在数据库中,则会出现提示信息“无此学生”。若在数据库中有该学生的学籍信息,则会显示另一提示信息“确定删除吗?”,点击确定,又会出现一提示信息“删除成功”。虽然有些繁琐,但能确保不误删学生的学籍信息。倘若想修改那些由于各种情况所造成的错误信息时,可点击界面上的修改记录按钮,用户可以根据有错误信息的学生的学号,先进行查询,查询后会显示该学生的全部学籍信息,用于可将错误的信息纠正过来,然后点击修改。返回主界面可点击退出按钮。查询记录:用户进入到主界面后,如果想要查看某个学生的学籍信息,可点击学生信息查询记录按钮。则会跳出一查询记录的对话框,学生信息查询窗口,可按学号,姓名,专业进行查

14、询。双击学生信息查询窗口中表格左边,可弹出此窗口显示该学生选课信息。如果想看教师信息,点击教师信息查询,教师信息查询窗口,可按教师编号,姓名,职称部门进行查询,双击表格左部可显示教师授课信息。退出: 用户进入到主界面后,进行了各种操作后,想要退出该学生学籍管理系统,可点击主界面上的退出按钮。点击后,用户就可以退出本系统。 2.3划分功能模块 根据系统功能的需求分析和高等院校学籍管理的特点,经过模块化的分析得到如下图1-1所示的系统功能模块结构图。 学生学籍管理系统学生信息查询学生选课修改学生信息学生成绩录入教师信息查询学生选课信息删除选课信息取消选课信息插入学生信息修改学生信息删除学生信息取消

15、学生信息修改学生成绩删除学生成绩取消学生成绩 图1-1 系统功能模块3. 数据流程分析3.1数据流程图数据流图表达了数据和处理的关系,根据用户的需求分析和高校学籍管理系统的需求,得出如下图1-2所示的学籍管理数据流图。顶层图: 图1-2 学籍管理数据流图3.2数据流程字典数据字典:数据流项目:学生信息=姓名+学号+性别+年龄+专业+总学分成绩单=姓名+课目+成绩数据项条目:数据项名:成绩类型:int长度:4范围:100-0加工条目:处理过程:过程名:学籍管理系统输入:学生信息,考试成绩,学生记录输出:统计表,成绩单数据字典:数据存储:数据存储名:学生记录组成:姓名+学号+性别+年龄+专业+总学

16、分处理过程:处理过程名:录入存储处理输入:学生信息处理要求:如果没有所输入的学生记录,则建立新的学生记录,存储基本情况和课目成绩处理过程名:查询处理输入:学生信息,课程号输出:成绩处理要求:根据学生的学号查询相应的成绩处理过程名:统计处理输入:学生考试成绩输出:平均成绩,排名成绩数据字典:数据流:新生信息=入学时间+姓名+年龄+专业+性别合格单=姓名+专业处理过程:处理过程名:审查输入:学生信息输出:合格单处理要求:根据学生信息判断是否是新生处理过程名:是否是新生输入:合格单输出:新生信息处理要求:根据合格单建立新生信息处理过程名:录入存储学生信息,各科成绩输入:新生信息,考试成绩输出:本次考

17、试成绩数据字典:数据存储:数据存储名:考试成绩组成:姓名+专业+成绩+学号组织方式:一学号为关键字处理过程:处理过程名:有效性检查输入:学号,课程号输出:有效查询处理要求:根据所输入的信息查询有效性处理过程名:成绩查询输入:考试成绩输出:成绩处理要求:根据考试成绩查询成绩处理过程:处理过程名:统计选择输入:学生记录输出:按规定统计成绩处理要求:根据所输入学生记录查询成绩4. 数据库设计4.1概念结构设计数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。同时,合理的数据

18、库结构也将有利于应用系统程序的实现。在充分需求分析的基础上,经过逐步抽象、概括、分析、充分研讨,可画出如下反映教学管理系统数据的整体E-R图 图4-1学生实体E-R图图4-2课程实体E-R图图4-3各实体之间的E-R图 4.2逻辑结构设计逻辑结构设计就是把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产品所支持的数据模型相符合的逻辑结构。设计逻辑结构一般分为3步进行:(1)将概念结构转换为一般的关系、网状、层次模型;(2)将转换来的关系、网状、层次模型向特定DBMS支持下的数据模型转换;(3)对数据模型进行优化。4.2.1 关系模型将E-R图转换为关系模型实际上就是要奖实体型、实体的

19、属性和实体型之间的联系转换为关系模式,这种转换一般遵循如下原则:一个实体型转换为一个关系模式。实体的属性就是关系的属性,实体的码就是关系的码。对于实体型间的联系则有不同的情况。将概念结构设计阶段设计好的基本E-R图转换为关系模型,如下所示:1)学生(XS)(学号(sno),姓名(sname),专业(sdept),性别(ssex),出生日期(sbirth),总学分(all_credit))学生表:主码:学号(sno)函数依赖:sno U.此表中,不存在非主属性对码的部分依赖,传递依赖,以及主属性对码的部分依赖和传递依赖,故满足3NF2)课程(KC)(课程号(cno),课程名(cname),开课学

20、期(term),学时(class_hour),学分(credit))课程表:主码:课程号(cno)函数依赖:cno U此表中不存在非主属性对码的部分依赖,传递依赖,以及主属性对码的部分依赖和传递依赖,故满足3NF3)选课(XS-KC)(学号(sno),课程号(cno),成绩(grade))选课表:主码:(学号,课程号)外码:学号,课程号函数依赖:(sno,cno) U此表中不存在非主属性对码的部分依赖,传递依赖,以及主属性对码的部分依赖和传递依赖,故满足3NF4)教师(TCH)(编号(tno),姓名(tname),性别(tsex),出生日期(tbirth),职称(professional),专

21、业(department))教师表:主码:编号(tno)函数依赖:tno U此表中不存在非主属性对码的部分依赖,传递依赖,以及主属性对码的部分依赖和传递依赖,故满足3NF5)授课(TCH-KC)(教师编号(tno),课程号(cno),上课地点(place))授课表:主码:(教师编号,课程号)外码:教师编号,课程号函数依赖:(tno,cno)U此表中不存在非主属性对码的部分依赖,传递依赖,以及主属性对码的部分依赖和传递依赖,故满足3NF4.3物理结构设计数据库的物理设计就是为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程。物理结构设计阶段实现的是数据库系统的内模式,它的质量直接决定

22、了整个系统的性能。因此在确定数据库的存储结构和存取方法之前,对数据库系统所支持的事务要进行仔细分析,获得优化数据库物理设计的参数数据库的物理设计通常分为两步:(1)确定数据库的物理结构,在关系数据库中主要指存取方法和存取结构;(2)对物理结构进行评价,评价的重点是时间和空间效率。设计的部分表结构如下截图所示;1)教师信息数据表(teacher)教师信息数据包含的数据项有编号、姓名、系编号、电话和Email,数据表中各字段的属性如图4-6所示。图4-6 “teacher”表的各字段属性(5)学生信息数据表(student)学生信息数据包含的数据项有编号、系编号、班编号、姓名、性别、生日、住址、电

23、话、Email和简历,数据表中各字段的属性如图4-7所示。图4-7 “student”表的各个字段属性(6)课程信息数据表(course)课程信息数据表包含的数据项有编号、名称、教师和学分 ,数据表中各字段的属性如图4-8所示。图4-8 “course”表的各字段属性(7)选课记录数据表(selectclass)选课记录数据包含的数据项有编号、学生、课编号和成绩,数据表中各字段的属性如图4-9所示。图4-9 “selectclass”表的各字段属性5.应用程序设计5.1用户界面设计及相关程序代码 部分界面截图及代码如下:此为主界面,有五个按钮,可进行查询,修改等操作。程序代码如下:Privat

24、e Sub Command1_Click()StuSearch.ShowEnd SubPrivate Sub Command2_Click()AddStu.ShowEnd SubPrivate Sub Command3_Click()AddStuCourse.ShowEnd SubPrivate Sub Command4_Click()AddStuGrade.ShowEnd SubPrivate Sub Command5_Click()TchSearch.ShowEnd Sub相关程序代码如下:Private Sub Command3_Click() 取消Stusno.Text = Stusn

25、ame.Text = Stusbirth.Text = Stusdept.Text = Stuall_credit.Text = Stusexm = FalseStusexf = FalseEnd Sub修改元组Private Sub Stuchange_Click()If Trim(Stusno.Text) = Or Trim(Stusname.Text) = Or (Stusexm = False And Stusexf = False) ThenMsgBox 加*数据项不能为空,请重新设置, vbOKOnly, 信息提示Stusno.SetFocusExit SubEnd IfIf Tr

26、im(Stusbirth.Text) ThenIf Not IsDate(Trim(Stusbirth.Text) ThenMsgBox 出生日期输入不正确,请重新输入, vbOKOnly, 信息提示Stusbirth.SetFocusExit SubEnd IfEnd IfStuADO.Recordset.Fields(学号) = Trim(Stusno.Text)StuADO.Recordset.Fields(姓名) = Trim(Stusname.Text)StuADO.Recordset.Fields(出生日期) = Trim(Stusbirth.Text)StuADO.Records

27、et.Fields(专业) = Trim(Stusdept.Text)StuADO.Recordset.Fields(总学分) = Trim(Stuall_credit.Text)If Stusexm = True ThenStuADO.Recordset.Fields(性别) = 男Else: Stusexf = TrueStuADO.Recordset.Fields(性别) = 女End IfStuADO.Recordset.UpdateEnd Sub删除元组Private Sub StuDel_Click()ret = MsgBox(是否要删除 + StuADO.Recordset(学号

28、) + 号学生的记录?, vbYesNo, 提示)If ret = vbYes ThenStuADO.Recordset.DeleteEnd IfStuADO.RecordSource = select sno 学号,sname 姓名,sdept 专业,ssex 性别,sbirth 出生日期,all_credit 总学分 from XSCommand3_ClickStuADO.RefreshEnd Sub选中一行显示元组Private Sub StuDG_Click()Stusno.Text = StuADO.Recordset(学号)Stusname.Text = StuADO.Record

29、set(姓名)Stusbirth.Text = StuADO.Recordset(出生日期)Stusdept.Text = StuADO.Recordset(专业)Stuall_credit = StuADO.Recordset(总学分)If Trim(StuADO.Recordset(性别) = 男 ThenStusexm = TrueElseStusexf = TrueEnd IfEnd Sub插入元组Private Sub Studinsert_Click()If Trim(Stusno.Text) = Or Trim(Stusname.Text) = Or (Stusexm = Fal

30、se And Stusexf = False) ThenMsgBox 加*数据项不能为空,请重新设置, vbOKOnly, 信息提示Stusno.SetFocusExit SubEnd IfIf Trim(Stusbirth.Text) ThenIf Not IsDate(Trim(Stusbirth.Text) ThenMsgBox 出生日期输入不正确,请重新输入, vbOKOnly, 信息提示Stusbirth.SetFocusExit SubEnd IfEnd IfStuADO.Recordset.AddNewStuADO.Recordset.Fields(学号) = Trim(Stus

31、no.Text)StuADO.Recordset.Fields(姓名) = Trim(Stusname.Text)StuADO.Recordset.Fields(出生日期) = Trim(Stusbirth.Text)StuADO.Recordset.Fields(专业) = Trim(Stusdept.Text)StuADO.Recordset.Fields(总学分) = Trim(Stuall_credit.Text)If Stusexm = True ThenStuADO.Recordset.Fields(性别) = 男Else: Stusexf = TrueStuADO.Records

32、et.Fields(性别) = 女End IfStuADO.Recordset.UpdateEnd Sub相关代码如下:Dim SqlStr As StringPublic Sub MakeSqlStr()SqlStr = If Trim(Stusno) ThenSqlStr = SqlStr + and sno like% + Trim(Stusno.Text) + % End IfIf Trim(Stusname) ThenSqlStr = SqlStr + and sname like % + Trim(Stusname.Text) + %End IfIf Trim(Stusdept)

33、ThenSqlStr = SqlStr + and sdept= + Trim(Stusdept.Text) + End IfEnd SubPrivate Sub Command1_Click()MakeSqlStrStuADO.RecordSource = select sno 学号,sname 姓名,sdept 专业,ssex 性别,sbirth 出生日期,all_credit 总学分 from XS where (ssex =男 or ssex=女) _& SqlStrStuADO.RefreshEnd SubPrivate Sub StuDG_DblClick()ShowStuKC.S

34、tuKCADO.RecordSource = select sname 姓名,cname 课程名,grade 成绩,credit 学分,term 开课学期,class_hour 课时 from XS,KC,XS_KC _& where XS.sno=XS_KC.sno and KC.cno=XS_KC.cno _& and XS.sno= + StuADO.Recordset(学号) + ShowStuKC.StuKCADO.RefreshShowStuKC.ShowStuSearch.Enabled = FalseEnd Sub代码如下:Dim SqlStr As StringPublic

35、Sub MakeSqlStr()SqlStr = If Trim(Tchtno) ThenSqlStr = SqlStr + and tno like % + Trim(Tchtno.Text) + % End IfIf Trim(Tchtname) ThenSqlStr = SqlStr + and tname like % + Trim(Tchtname.Text) + %End IfIf Trim(Tchprofessional) ThenSqlStr = SqlStr + and professional like % + Trim(Tchprofessional.Text) + %E

36、nd IfIf Trim(Tchdepartment.Text) ThenSqlStr = SqlStr + and department like % + Trim(Tchdepartment.Text) + %End IfEnd SubPrivate Sub TchDG_DblClick()ShowTchKC.TchKCADO.RecordSource = select tname 姓名,cname 课程,credit 学分,place 上课地点 from KC,TCH,TCH_KC where TCH.tno=TCH_KC.tno and KC.cno=TCH_KC.cno _& and

37、 Tch.tno= + TchADO.Recordset(教师编号) + ShowTchKC.TchKCADO.RefreshShowTchKC.ShowEnd SubPrivate Sub Tchseek_Click()MakeSqlStrTchADO.RecordSource = select tno 教师编号,tname 姓名,tsex 性别,tbirth 出生日期,professional 职称,department 部门 from TCH where (tsex =男 or tsex=女) _& SqlStrTchADO.RefreshEnd Sub代码如下:Private Sub

38、form_unload(cancel As Integer)StuSearch.Enabled = TrueEnd Sub学生选课相关操作代码如下:取消Private Sub Stucancel_Click()Stusno.Text = Stusname.Text = Stucname.Text = End Sub选课Private Sub Stuchoose_Click()StuADOXS.RecordSource = select * from XS where sno= + Trim(Stusno.Text) + StuADOXS.RefreshIf Trim(Stusno.Text)

39、= Or Trim(Stusname.Text) = Or Trim(Stucname.Text) = Thenret = MsgBox(输入不正确,请重新输入!, vbYes, 错误!)ElseIf Trim(Stusname.Text) Trim(StuADOXS.Recordset(sname) Thenret = MsgBox(输入学号与姓名不匹配,请重新输入!)ElseStuADOXS_KC.RecordSource = select * from XS_KCStuADOXS_KC.RefreshStuADOXS_KC.Recordset.AddNewStuADOXS_KC.Reco

40、rdset.Fields(sno) = Trim(Stusno.Text)StuADOKC.RecordSource = select * from KC where cname= + Trim(Stucname.Text) + StuADOKC.RefreshStuADOXS_KC.Recordset.Fields(cno) = StuADOKC.Recordset(cno)StuADOXS_KC.Recordset.UpdateStuADO.RefreshEnd IfEnd Sub删除元组Private Sub Studelete_Click()ret = MsgBox(是否要删除 + S

41、tuADO.Recordset(学号) + 号学生的选课记录?, vbYesNo, 提示)If ret = vbYes ThenStuADOXS_KC.RecordSource = select * from XS_KC where sno= + StuADO.Recordset(学号) + StuADOXS_KC.RefreshStuADOXS_KC.Recordset.DeleteEnd IfStuADO.RefreshStucancel_ClickEnd Sub单击显示元组Private Sub StuDG_Click()Stusno.Text = StuADO.Recordset(学号

42、)Stusname.Text = StuADO.Recordset(姓名)Stucname.Text = StuADO.Recordset(课程名)End Sub代码如下:Private Sub Stuadd_Click()If Stugrade.Text = Thenret = MsgBox(输入为空,请重新输入, vbYes, 错误提示)ElseStuADOKC.RecordSource = select * from KC where cname= + Trim(Stucname.Text) + StuADOKC.RefreshStuADOXS_KC.RecordSource = sel

43、ect * from XS_KC where cno= + StuADOKC.Recordset(cno) + StuADOXS_KC.RefreshStuADOXS_KC.Recordset.Fields(sno) = Stusno.TextStuADOXS_KC.Recordset.Fields(cno) = StuADOKC.Recordset(cno)StuADOXS_KC.Recordset.Fields(grade) = Stugrade.TextStuADOXS_KC.Recordset.UpdateStuADO.RecordSource = select sno 学号,XS_K

44、C.cno 课程号,cname 课程名,grade 成绩 from KC,XS_KC where KC.cno=XS_KC.cnoStuADO.RefreshEnd IfEnd Sub取消Private Sub Stucancel_Click()Stusno.Text = Stucname.Text = Stugrade.Text = End Sub删除学生成绩Private Sub Studelete_Click()ret = MsgBox(是否要删除 + Trim(StuADO.Recordset(学号) + 号学生成绩?, vbYesNo, 提示)If ret = vbYes ThenStuADO.Recordset(成绩) = NullEnd IfEnd Sub单击显示元组Private Sub StuDG_Click()Stusno.Text = StuADO.Recordset(学号)Stucname.Text = StuADO.Recordset(课程名)End Sub修改学生成绩Private Sub Stusure_Click()If Stug

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论