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

下载本文档

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

文档简介

1、课程设计报告课程名称数据库系统原理设计题目学生学籍管理系统学生姓名学 号专业班级指导教师2012 年 12月 22目录1. 系统概述 ,31.1 开发目的和背景 ,31.2 开发环境和技术 ,32. 系统分析 ,.52.1 系统需求分析 ,.52.2 功能需求分析 ,52.3. 划分功能模块 ,73. 数据流程分析 ,83.1 数据流程图 ,83.2 数据流程字典 ,94. 数据库设计 ,124.1 概念结构设计 ,.124.2 逻辑结构设计 ,134.3 物理结构设计 ,145. 应用程序设计 ,165.1 用户界面设计及相关程序代码 ,165.2 运行结果 ,286. 心得体会 ,327.

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

3、、逻辑结构设计阶段、物理结构设计阶段、数据库的实施、数据库系统运行与 维护阶段。1.2 开发环境和技术 系统开发环境为局域网或校园网网络环境,网络中有一台安装 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应用程序开发工具,是目前最为 广泛的、易学易用的面向对象的

4、开发工具。 Visual Basic 提供了大量的控件, 这些控件可用于设计界面和实现各种功能, 减少了编程人员的工作量, 也简化了 界面设计过程,从而有效的提高了应用程序的运行效率和可靠性。利用 VISUAL BASIC程序设计语言,可以很方便地设计出在WINDOWS境下运行的应用程序。故而,实现本系统VB是一个相对较好的选择。1211 Visual Basic的编程特点Visual Basic 语言的出现为Windows下的编程提出了一个新概念,利用Visual Basic 的动态数据交换、对象的链接和嵌入、动态链接库、 ActiveX 技术 可以很方便地设计出功能强大的应用程序。利用 V

5、isual Basic 语言编程有以下几个特点:1. 可视化程序设计在 Visual Basic 中开发的应用程序,不但有丰富的图形界面,同时由用户为开发图形界面添加的代码真是少而又少, 因为在设计图形界面的过程中只需设 置 ActiveX 控件的属性即可。2. 强大的数据库和网络功能随着 Visual Basic 语言的向前发展,它在数据库和网络方面的功能优势就 愈加明显, 利用 Visual Basic 中的 ODBC 开放式的数据库访问技术可以很方 便地开发出自己的数据库应用程序;利用 Visual Basic 自带的可视化数据管理 器和报表生成器,完全可以在 Visual Basic

6、就完成数据库的开发工作。3其它特性在 Visual Basic 以前的版本中,由于仍然摆脱不了解释执行的代码运行机 制,所以在相当的程度上制约了 Visual Basic 的发展。从 Visual Basic5.0 版本开始,在 Visual Basic 中制作的应用程序都改变 为编译执行,使得 Visual Basic 的代码效率有了很大的提高, 同时执行的速度 也 加快了解 30%(同 Visual Basic4.0 相比) 。当然在 Visual Basic 中还有其它特性,例如: 面向对象的编程语言; 结构化程序设计; 事件驱动的程序设计:在传统的或“过程化”的应用程序中, 应用程序自

7、身控制了执行哪一部分代 码和按何种顺序执行代码。 从第一行代码执行程序并按应用程序中预定的路径执 行,必要时才会调用过程。在事件驱动的应用程序中, 代码不是按预定的路径执行, 而是在响不同的事 件时执行不同的代码片段。 事件可以由用户操作触发、 也可以由来自操作系统或 其它应用程序的消息触发、甚至由应用程序本身的消息触发。这些事件的顺序, 决定了代码执行的顺序,因此应用程序每次运行时所经过的路径都是不同的。支持动态链接库; 应用程序之间的资源共享。1212 数据库开发中的三大工具Visual Basic 在数据库 应用程序的开 发领域中,提供包含数据管理 (DataManager),数据控件(

8、Data Control )以及数据编程对象(数据访问对象 (DAO、远程数据对象(RDO和ActiveX数据对象(ADO)等功能强大的工具, 协助设计人员轻松的连接数据库文件, 并访问其中的数据, 在功能方面与其他一 些专业数据库软件(如 FoxPro,Micosoft Access 等)不相上下。2. 系统分析2.1 系统需求分析 本系统的设计模拟一般学生学籍管理内容,经过充分地系统调研,发现 本系统应包括学生信息、课程信息、学生专业信息等需管理信息。进一步发 现信息实体间管理信息有:专业分期课程计划、学生选课及各科成绩统计等 内容。实现一个通用学籍管理系统,完成对学生学籍信息的增加、删除

9、、修 改、查询、显示全部学生学籍信息等功能。(1)本系统需要管理的实体信息 班级信息:班号、班级名称、班主任工号等; 学生基本信息:学号、类别、姓名、性别、出生日期、电话、入校日期、 家庭地址、备注等; 专业信息:专业编号、专业名称、创办年份、学生规模等; 学期信息:编号、学期名等; 课程基本信息:课程号、课程名、类型、学分等 毕业信息:毕业证号、性别、学号、姓名、毕业时间、已修学分、需修学 分等。(2)本系统要管理的实体联系信息 学生入学时需录入登记, 并选定一专业, 每学期注册后即可选课 (分必修 课和选修课),每位学生选多门课,一门课应有多名学生修读。学生考试后,要 登记考试成绩。 专业

10、分学期课程计划情况(即专业教学计划),要反映是否必修课、是否 学位课、是否考试课及备注信息。 学生各科成绩需要登记,统计排名。 学生毕业需计算学分,审核资格(学分、学习期数是否达到要求),顺利毕业的颁发毕业证。 学生在校表现根据实际情况,进行奖惩记录。2.2 功能需求分析 本系统开发的目的,就是通过系统开发,实现课程管理有关工作的计算机 化,提高关键环节的处理速度和规范化, 并对有关的工作进行集成和重组, 通过 网络系统实现集中管理、 分散操作, 提高选课管理工作的质量和效率。 通过对学 校的选课及成绩管理工作进行实际调查, 学生可以自由选择课程、 选老师, 学生 注册的行政班和教学班是游离的

11、, 开发工作需要涉及任课教师、 学生、管理员 (教 务工作人员 ) 三种用户。学生需求在学校规定的选课期间, 学生通过任何一台连接因特网计算机的浏览器就能 进行网上选课。 学生以用户名和密码进入选课系统。 选课系统会根据用户名和密 码自动识别所在的系, 然后显示出与学生有关的课程列表。 系统必须控制某一门 课程在学期间只能选一次。 在学生选课时能自动进行有关逻辑判断, 如:是否选 课超过了规定的门数, 是否选择了不符合预修条件的课程, 是否选择的课程超过 此课程最大选择人数, 只有符合要求的选择才能选课成功。 学生可以更改部分个 人信息如密码,电话号码等;学生可以查询已修课程成绩和已选课程信息

12、。教师需求任课教师登录后,可以查看自己所教课程的课程表;对于同一学期内有多门 课程的教师,需要选择具体课程后,才能查看已选这门课程的学生信息:期末, 教师可以上传这些学生的成绩。管理员需求系统管理员登录后,可以对学生,教师,课程,教学班级的基本信息进行添 加,修改,删除等工作。课程安排是选课的核心,只有按照实际的教学情况安排 出每个学期必修和选修的课程, 才能保证选课的顺利进行。 在每学期, 学生选课 前,各院系管理员必须在该院系培养方案中录入本学期可以开设的课程和排课安 排,对于需要预修条件的课程, 需要设置好预修条件。 基础部管理员负责公共课 的课程开设和排课安排。 其中排课及教学班级的安

13、排上要保证同一个教师在同一 时间只能上一门课程;同一个教室同一时间也只能开一门课程。功能描述 :添加修改删除学生信息:用户进入到主界面后, 选择学生信息修改, 会弹出一对话框, 若想添加新的 学生信息,可点击插入记录按钮,用户可在各对应的框内填写所要填写的信息。当然这些不能胡乱的填写, 要根据日常情况来填写。 若想把那些已不在的学生删 除掉,可点击删除记录按钮。用户填写所要删除学生的学号,点击确定。若该学 生的学籍信息不在数据库中,则会出现提示信息“无此学生”。若在数据库中有 该学生的学籍信息,则会显示另一提示信息“确定删除吗?”,点击确定,又会 出现一提示信息 “删除成功” 。虽然有些繁琐,

14、 但能确保不误删学生的学籍信息。 倘若想修改那些由于各种情况所造成的错误信息时, 可点击界面上的修改记录按 钮,用户可以根据有错误信息的学生的学号, 先进行查询, 查询后会显示该学生 的全部学籍信息, 用于可将错误的信息纠正过来, 然后点击修改。 返回主界面可 点击退出按钮。查询记录:用户进入到主界面后, 如果想要查看某个学生的学籍信息, 可点击学生信息查询 记录按钮。 则会跳出一查询记录的对话框, 学生信息查询窗口, 可按学号,姓名, 专业进行查询。 双击学生信息查询窗口中表格左边, 可弹出此窗口显示该学生选 课信息。如果想看教师信息,点击教师信息查询,教师信息查询窗口,可按教师 编号,姓名

15、,职称部门进行查询,双击表格左部可显示教师授课信息。退出: 用户进入到主界面后,进行了各种操作后,想要退出该学生学籍管理系统, 可点击主界面上的退出按钮。点击后,用户就可以退出本系统。2.3 划分功能模块 根据系统功能的需求分析和高等院校学籍管理的特点,经过模块化的分析得 到如下图 1-1 所示的系统功能模块结构图。图1-1系统功能模块3. 数据流程分析3.1数据流程图数据流图表达了数据和处理的关系,根据用户的需求分析和高校学籍管理 系统的需求,得出如下图1-2所示的学籍管理数据流图。顶层图:图1-2学籍管理数据流图3.2数据流程字典数据字典:数据流项目:学生信息=姓名+学号+性别+年龄+专业

16、+总学分成绩单=姓名+课目+成绩数据项条目:数据项名:成绩类型:int长度:4范围:100-0加工条目:处理过程:过程名:学籍管理系统输入:学生信息,考试成绩,学生记录输出:统计表,成绩单数据字典:数据存储:数据存储名:学生记录组成:姓名+学号+性别+年龄+专业+总学分处理过程:处理过程名:录入存储处理输入:学生信息处理要求:如果没有所输入的学生记录,则建立新的学生记录,存储基本情况 和课目成绩处理过程名:查询处理输入:学生信息,课程号输出:成绩处理要求:根据学生的学号查询相应的成绩处理过程名:统计处理输入:学生考试成绩输出:平均成绩,排名成绩数据字典:数据流:新生信息=入学时间+姓名+年龄+

17、专业+性别合格单=姓名+专业处理过程:处理过程名:审查输入:学生信息输出:合格单处理要求:根据学生信息判断是否是新生处理过程名:是否是新生输入:合格单输出:新生信息处理要求:根据合格单建立新生信息处理过程名:录入存储学生信息,各科成绩 输入:新生信息,考试成绩输出:本次考试成绩2. 1数据字典:数据存储:数据存储名:考试成绩组成:姓名+专业+成绩+学号组织方式:一学号为关键字处理过程:处理过程名:有效性检查输入:学号,课程号输出:有效查询处理要求:根据所输入的信息查询有效性处理过程名:成绩查询输入:考试成绩输出:成绩处理要求:根据考试成绩查询成绩处理过程:处理过程名:统计选择输入:学生记录输出

18、:按规定统计成绩处理要求:根据所输入学生记录查询成绩4. 数据库设计4.1概念结构设计数据库在一个信息管理系统中占有非常重要的地位,数据库结构设计的好 坏将直接对应用系统的效率以及实现的效果产生影响。合理的数据库结构设计可以提高数据存储的效率,保证数据的完整和一致。同时,合理的数据库结构也将 有利于应用系统程序的实现。在充分需求分析的基础上,经过逐步抽象、概括、 分析、充分研讨,可画出如下反映教学管理系统数据的整体E-R图图4-1学生实体E-R图图4-2课程实体E-R图图4-3各实体之间的E-R图教师4.2逻辑结构设计逻辑结构设计就是把概念结构设计阶段设计好的基本E-R图转换为与选用DBMS产

19、品所支持的数据模型相符合的逻辑结构。设计逻辑结构一般分为3步进行:(1) 将概念结构转换为一般的关系、网状、层次模型;(2) 将转换来的关系、网状、层次模型向特定 DBMS支持下的数据模型转 换;(3) 对数据模型进行优化。关系模型将E-R图转换为关系模型实际上就是要奖实体型、实体的属性和实体型之 间的联系转换为关系模式,这种转换一般遵循如下原则:一个实体型转换为一个 关系模式。实体的属性就是关系的属性,实体的码就是关系的码。对于实体型间 的联系则有不同的情况。将概念结构设计阶段设计好的基本 E-R图转换为关系模型,如下所示:1) 学生(XS)(学号(sno),姓名(sname),专业(sde

20、pt),性别(ssex),出生日期(sbirth ),总学分 l_credit)学生表:主码:学号(sno)函数依赖:snoU.此表中,不存在非主属性对码的部分依赖,传递依赖,以及主属性对码的部分依赖和传递依赖,故满足3NF2) 课程(KC (课程号(eno),课程名(cname),开课学期(term),学时(class_hour),学分(credit)课程表:主码:课程号(eno)函数依赖:eno也此表中不存在非主属性对码的部分依赖,传递依赖,以及主属性对码的 部分依赖和传递依赖,故满足3NF3)选课(XS-KQ (学号(sno),课程号(eno),成绩(grade)选课表:主码:(学号,课

21、程号)外码:学号,课程号函数依赖:(sn o,cno) U此表中不存在非主属性对码的部分依赖,传递依赖,以及主属性对 码的部分依赖和传递依赖,故满足 3NF4) 教师(TCH (编号(tno),姓名(tname),性别(tsex),出生日期(tbirth),职 称(professi on al) ,专业(departme nt)教师表:主码:编号(tno)函数依赖:tno U此表中不存在非主属性对码的部分依赖,传递依赖,以及主属性对码的 部分依赖和传递依赖,故满足3NF5) 授课(TCH-KC (教师编号(tno),课程号(eno),上课地点(place)授课表:主码:(教师编号,课程号)外码

22、:教师编号,课程号函数依赖:(tno,en kU此表中不存在非主属性对码的部分依赖,传递依赖,以及主属性对码的 部分依赖和传递依赖,故满足3NF4.3物理结构设计数据库的物理设计就是为一个给定的逻辑数据模型选取一个最适合应用要求的物理结构的过程。物理结构设计阶段实现的是数据库系统的内模式,它的质量直接决定了整个系统的性能。因此在确定数据库的存储结构和存取方法之前, 对数据库系统所支持的事务要进行仔细分析,获得优化数据库物理设计的参数 数据库的物理设计通常分为两步:(1)确定数据库的物理结构,在关系数据库中主要指存取方法和存取结构;(2)对物理结构进行评价,评价的重点是时间和空间效率。设计的部分

23、表结构如下截图所示;1)教师信息数据表(teacher )教师信息数据包含的数据项有编号、姓名、系编号、电话和 Email,数据表中 各字段的属性如图4-6所示。Hi设计査teacher,僅畫是-rtu血二|回区feS |北葩A娠号lharB姓名 archur10电话izhar varchsrB117Saulvtrchu-5V图4-6“teacher ”表的各字段属性(5)学生信息数据表(student)学生信息数据包含的数据项有编号、系编号、班编号、姓名、性别、生日、住址、电话、Email和简历,数据表中各字段的属性如图 4-7所示。7a iff计春 student,站占粹.匚|口 V|列名

24、数IE类型长度 允许空A图4-7“ student ”表的各个字段属性(6)课程信息数据表(course)课程信息数据表包含的数据项有编号、名称、教师和学分,数据表中各字段的属性如图4-8所示。轟设计表course,住置是 u stude. L|OX列名数据类型檢度允许空经口chsr8var chai*20霰师char6学分char1图4-8“ course ”表的各字段属性(7) 选课记录数据表(selectclass )选课记录数据包含的数据项有编号、学生、课编号和成绩,数据表中各字 段的属性如图4-9所示。inKit 套 selectclass1* 位區垦 *.叵列名数据类型长度允许空A

25、iut4课編号chvckar88numeric9V图4-9“ selectclass ”表的各字段属性5. 应用程序设计5.1用户界面设计及相关程序代码部分界面截图及代码如下:莎&亏主至譜善逻生迁此为主界面,有五个按钮,可进行查询,修改等操作。程序代码如下:Private Sub Comma nd1_Click()StuSearch.ShowEnd SubPrivate Sub Comma nd2_Click()AddStu.ShowEnd SubPrivate Sub Comma nd3_Click()AddStuCourse.ShowEnd SubPrivate Sub Comma nd4

26、_Click()AddStuGrade.ShowEnd SubPrivate Sub Comma nd5_Click()TchSearch.ShowEnd Sub相关程序代码如下:Private Sub Command3_Click() 取消Stusno.Text = Stusname.Text = Stusbirth.Text = Stusdept.Text = Stuall_credit.Text = Stusexm = FalseStusexf = FalseEnd Sub 修改元组Private Sub Stuchange_Click()If Trim(Stusno.Text) = O

27、r Trim(Stusname.Text) = Or (Stusexm = False 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.

28、Fields( 学号 ) = Trim(Stusno.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 Then性别) = 男性别) = 女StuADO.Recordset.F

29、ields(Else: Stusexf = TrueStuADO.Recordset.Fields(End IfEnd Sub 删除元组Private Sub StuDel_Click()ret = MsgBoxC是否要删除+ StuADO.Recordset(学号)+ 号学生的记录?, vbYesNo, 提示)If ret = vbYes ThenEnd IfStuADO.RecordSource = select sno 学号,sname 姓名,sdept 专业,ssex 性 别,sbirth 出生日期,all_credit 总学分 from XSCommand3_ClickStuADO.

30、RefreshEnd Sub 选中一行显示元组Private Sub StuDG_Click()Stusno.Text = StuADO.Recordset( 学号)Stusname.Text = StuADO.Recordset( 姓名)Stusbirth.Text = StuADO.Recordset( 出生日期 )Stusdept.Text = StuADO.Recordset(专业)Stuall_credit = StuADO.Recordset(总学分)If Trim(StuADO.Recordset( 性别) = 男 ThenStusexm = TrueElseStusexf =

31、TrueEnd IfEnd Sub 插入元组Private Sub Studinsert_Click()If Trim(Stusno.Text) = Or Trim(Stusname.Text) = Or (Stusexm = False And Stusexf = False) ThenMsgBox 加*数据项不能为空,请重新设置 , vbOKOnly, 信息提示 Stusno.SetFocusExit SubEnd IfIf Trim(Stusbirth.Text) ThenIf Not IsDate(Trim(Stusbirth.Text) ThenMsgBox 出生日期输入不正确,请重

32、新输入 , vbOKOnly, 信息提示 Stusbirth.SetFocusExit SubEnd If End IfStuADO.Recordset.AddNew StuADO.Recordset.Fields( StuADO.Recordset.Fields( StuADO.Recordset.Fields( StuADO.Recordset.Fields( StuADO.Recordset.Fields( If Stusexm = True Then StuADO.Recordset.Fields( Else: Stusexf = True StuADO.Recordset.Field

33、s( End If StuADO.Recordset.Update End Sub学号) = Trim(Stusno.Text) 姓名 ) = Trim(Stusname.Text) 出生日期 ) = Trim(Stusbirth.Text) 专业 ) = Trim(Stusdept.Text) 总学分 ) = Trim(Stuall_credit.Text)性别) = 男性别) = 女相关代码如下:Dim SqIStr As Stri ngPublic Sub MakeSqlStr()SqIStr =If Trim(Stusno) ThenSqlStr = SqlStr + and sno

34、like% + Trim(Stusno.Text) + %End IfIf Trim(Stusname) ThenSqlStr = SqlStr + and sname like % + Trim(Stusname.Text) + %End IfIf Trim(Stusdept) The nSqlStr = SqlStr + and sdept= + Trim(Stusdept.Text) + ”End IfEnd SubPrivate Sub Comma nd1_Click()MakeSqlStrStuADO.RecordSource = select sno 学号,sname 姓名,sde

35、pt 专业,ssex 性 别,sbirth 出生日期,all_credit 总学分 from XSwhere (ssex =男or ssex= 女)_& SqlStrStuADO.RefreshEnd SubPrivate Sub StuDG_DblClick()ShowStuKC.StuKCADO.RecordSource = select sname 姓名,cname 课程 名,grade 成 绩,credit 学 分,term 开 课学期,class_hour 课 时 from XS,KC,XS_KC _& ” where XS.s no=XS_KC.s no and KC.cno=XS

36、_KC.c no _& and XS.s no* + StuADO.Recordset( 学号)+ ShowStuKC.ShowStuSearch.E nabled = FalseEnd Sub代码如下:Dim SqlStr As StringPublic Sub MakeSqlStr()SqlStr = If Trim(Tchtno) ThenSqlStr = SqlStr + and tno like % + Trim(Tchtno.Text) + % End IfIf Trim(Tchtname) ThenSqlStr = SqlStr + and tname like % + Trim

37、(Tchtname.Text) + % End IfIf Trim(Tchprofessional) ThenSqlStr+ %= SqlStr + and professional like % + Trim(Tchprofessional.Text)End IfIf Trim(Tchdepartment.Text) ThenSqlStr = SqlStr + and department like % + Trim(Tchdepartment.Text) +End IfEnd SubPrivate Sub TchDG_DblClick()ShowTchKC.TchKCADO.RecordS

38、ource select tn ame 姓名,cn ame 课程,credit 学分 ,place 上课地点 from KC,TCH,TCH_KC where TCH.tno=TCH_KC.tno and KC.cno=TCH_KC.cno _& and Tch.tno= + TchADO.Recordset( 教师编号) + ShowTchKC.ShowEnd SubPrivate Sub Tchseek_Click()MakeSqIStrTchADO.RecordSource= select tno 教师编号,tname 姓名,tsex 性别,tbirth 出生日期,professiona

39、l 职称,department 咅部门 from TCH where (tsex = 男 or tsex=女)_& SqlStrTchAD O.R efreshEnd Sub代码如下:Private Sub form _un load(ca ncel As In teger)StuSearch.E nabled = TrueEnd Sub学生选课相关操作代码如下:取消Private Sub Stuca ncel_Click()Stus no.Text =Stusname.Text = Stucname.Text = End Sub 选课Private Sub Stuchoose_Click()

40、StuADOXS.RecordSource= select * from XSwhere sno= + Trim(Stusno.Text) + StuADOXS.RefreshIf Trim(Stusno.Text) = Or Trim(Stusname.Text) = Or Trim(Stucname.Text) = Thenret = MsgBox( 输入不正确,请重新输入 !, vbYes, 错误!)ElseIf Trim(Stusname.Text) Trim(StuADOXS.Recordset(sname) Then ret = MsgBox( 输入学号与姓名不匹配,请重新输入 !

41、)ElseStuADOXS_KC.RecordSource = select * from XS_KCStuADOXS_KC.RefreshStuADOXS_KC.Recordset.AddNew StuADOXS_KC.Recordset.Fields(sno) = Trim(Stusno.Text) StuADOKC.RecordSource = select * from KC where cname= + Trim(Stucname.Text) + StuADOKC.RefreshStuADOXS_KC.Recordset.Fields(cno) = StuADO.RefreshEnd

42、 IfEnd Sub 删除元组Private Sub Studelete_Click()ret = MsgBox( 是否要删除 + StuADO.Recordset( 学号) + 号学生的选课记 录?, vbYesNo, 提示)If ret = vbYes The nStuADOXS_KC.RecordSource = select * from XS_KC where sn o=”StuADO.Recordset(学号)+ StuADOXS_KC.RefreshEnd IfStuADO.RefreshStuca ncel_ClickEnd Sub单击显示元组Private Sub StuDG

43、_Click()Stus no.Text = StuADO.Recordset( 学号)Stus name.Text = StuADO.Recordset( 姓名)Stucname.Text = StuADO.Recordset( 课程名)End Sub代码如下:Private Sub Stuadd_Click()If Stugrade.Text = The nret = MsgBox( 输入为空,请重新输入 , vbYes, 错误提示)ElseStuADOKC.RecordSource = select * from KC where cname= + Trim(Stucname.Text)

44、 + StuADOKC.RefreshStuADOXS_KC.RecordSource = select * from XS_KC where cno= + StuADOKC.Recordset(cno) + StuADOXS_KC.RefreshStuADOXS_KC.Recordset.Fields(sno) = Stusno.Text StuADOXS_KC.Recordset.Fields(cno) = StuADOKC.Recordset(cno) StuADOXS_KC.Recordset.Fields(grade) = StuADO.RecordSource = select s

45、no 学 号 ,XS_KC.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,

46、提示)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 Stugrade.Text = Thenret = MsgBox( 输入为空,请重新输入 , vbYes, 错误提示)ElseStuADOKC.RecordSource = select * from KC where cname= + Trim(Stucname.Text) + StuADOKC.RefreshStuADOXS_KC.RecordSource = select * from XS_KC where cno= + StuADOKC.Recordset(cno) + + and sno= + Trim(Stusno.Text) + StuADOXS_KC.RefreshStuADOXS_KC.Recordse

温馨提示

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

评论

0/150

提交评论