数据库设计报告模板_第1页
数据库设计报告模板_第2页
数据库设计报告模板_第3页
数据库设计报告模板_第4页
数据库设计报告模板_第5页
已阅读5页,还剩22页未读 继续免费阅读

下载本文档

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

文档简介

1、附录学生成绩管理系统设计说明(本设计以VB为前台对数据库进行操作)需求本系统主要用于学校的学生成绩管理。用户身份的验证学生基本信息管理按班级选课学生成绩的管理总体设计本系统包括:标准模块、系统登录模块、主界面模块、系统管理模块、学生基本信息管理模块、选课模块、成 绩管理模块。标准模块定义公共变量和过程。系统登录模块进行用户身份的验证。主界面模块作为系统总界面,供用户进行各项选择。系统管理模块用户管理及系统退出。学生基本信息管理模块学生基本信息的录入和查询。选课模块为班级选课。成绩管理模块进行学生成绩的录入及查询。数据库设计及配置数据库设计该数据库由以下几个表组成:用户表、学生基本信息表、班级课

2、程表、学生成绩表。3.1.1 用户表包括用户名、密码、是否是超级用户。字段名称数据类型用户名文本密码文本是否为超级用户布尔3.1.2学生基本信息表包括学号、姓名、电话、地址、班级名称、性别。字段名称数据类型学号文本姓名文本电话文本地址文本班级名称文本性别文本3.1.3班级课程表包括班级名称、课程名称。字段名称数据类型班级名称文本课程名称文本3.1.4学生成绩表包括学号、课程名称、成绩。字段名称数据类型学号文本课程名称文本成绩数值(单精度浮点型)数据库中各表关系学生基本信息表与班级课程表通过班级名称字段相关联,学生基本信息表与学生成绩表通过学号字段相关 联,班级课程表与学生成绩表通过课程名称字段

3、相关联。系统实现4.1.标准模块(公有模块)4.1.1标准模块中的数据定义用于定义全局变量及过程。本系统定义了当前用户名及用户类型。序号变量名数据类型1UserNameString2UserTypeBoolean4.1.2标准模块代码设计Option ExplicitPublic UserName As StringPublic UserType As Boolean系统登录模块4.2.1 说明进行用户身份的验证。特定的用户才能登录到系统。4.2.2 窗体设计系统登录窗体的窗体类型为Form,界面如下图所示:主要控件属性如下表所示:对象名类型属性值说明FrmLogin窗体Caption学生成绩

4、管理系统登录学生成绩管理系统登录窗体Labell标签Caption用户名:Label2标签Caption密码:Textl文本框Text用于输入用户名Text2文本框Text用于输入密码cmdOk命令按钮Caption确定确定当前输入的用户名和密码,进行 用户登录。登录成功后进入主界面。如果三次输入错误的用户和密码,程 序将自动退出cmdCancel命令按钮Caption取消取消操作,退出程序Adodc1AdodcConnectionString连接所使用的数据库, ConnectionString属性在界面中设置, RecordSource属性在代码中设置。4.2.3代码设计公共定义Optio

5、n ExplicitDim Countl As Integer窗体装载处理程序(Load)Private Sub Form_Load()错误次数清零系统退出Count1 = 0End Sub取消按钮(cmdCancel)处理程序(Click)Private Sub cmdCancel_Click()Unload MeEnd Sub确定按钮(cmdOk)处理程序(Click)Private Sub cmdOk_Click()Dim s1 As StringDim Password As String On Error Resume NextIf Text1.Text = Then用户名为空,则退

6、出MsgBox (用户名不能为空,请重新输入) Textl.SetFocus Exit SubEnd If按输入的用户名进行查询 sl = SELECT * from 用户表 WHERE 用户名二 & Textl.Text & Adodcl.RecordSource = sl Adodcl.RefreshIf Adodcl.Recordset.EOF = False ThenUserName = Adodcl.Recordset.Fields(O)Password = Adodcl.Recordset.Fields(l)UserType = Adodcl.Recordset.Fields(2)

7、 If Password = Text2.Text ThenUnload MeFrmMain.ShowExit SubElseMsgBox (密码错误,请重新输入)Text2.SetFocusText2.Text =End IfElseMsgBox ”用户名错误,请重新输入Textl.SetFocusTextl.Text =Text2.Text =End IfCountl = Countl + lIf Countl = 3 ThenMsgBox ”错误超过3次,系统退出Unload MeEnd IfEnd Sub判断查询结果有该用户名,即用户名正确判断密码是否正确密码正确,关闭当前窗体显示主界

8、面窗体密码错误,提示没有该用户名,即用户名错误错误次数累计4.3.主界面模块4.3.1说明作为系统总界面,供用户进行各项选择。4.3.2窗体设计主界面模块窗体类型为MDIForm,界面如下图所示。代码设计窗体变为活动窗体处理程序(MDIFormActivate)Private Sub MDIForm_Activate()WindowState = 2窗体最大化状态StatusBar1.Panels(1).Text = 用户名: & UserName在状态栏显示用户名、用户类型If UserType = True ThenStatusBar1.Panels(2).Text = 用户类型:管理员E

9、lseStatusBar1.Panels(2).Text = 用户类型:普通用户End IfIf UserType = False Then对普通用户设某些菜单项不可用AA1.Enabled = FalseBB1.Enabled = FalseCC.Enabled = FalseDD1.Enabled = FalseToolbar1.Buttons(1).Enabled=False 对普通用户设工具栏的某些按钮不可用Toolbar1.Buttons(3).Enabled=FalseToolbar1.Buttons(6).Enabled=FalseToolbar1.Buttons(7).Enab

10、led=FalseToolbar1.Buttons(9).Enabled=FalseEnd IfEnd Sub定时器(Timerl)处理程序(Timer)Private Sub Timer1_Timer()StatusBar1.Panels(3).Text = Now在状态栏中显示当前时间End Sub工具栏(Toolbar 1)处理程序(ButtonClick)Private Sub Toolbar1_ButtonClick(ByVal Button As MSComctlLib.Button)Select Case Button.IndexCase 1Form11.Show(1)用户管理C

11、ase 3Form21.Show(1)学生基本信息维护Case 4Form22.Show(1)学生基本信息查询Case 6Form31.Show(1)课程添加Case 7Form32.Show(1)课程删除Case 9Form41.Show(1)学生成绩维护Case 10Form42.Show (1)学生成绩查询Case 12Unload Me系统退出End SelectEnd Sub“用户管理”菜单项处理程序(AA1Click)Private Sub AA1_Click()Form11.Show (1)End Sub“退出”菜单项处理程序(AA3click)Private Sub AA3_C

12、lick()Unload MeEnd Sub“学生基本信息维护”菜单项处理程序(BB1click)Private Sub BB1_Click()Form21.Show (1)End Sub“学生基本信息查询”菜单项处理程序(BB2click)Private Sub BB2_Click()Form22.Show (1)End Sub“课程添加”菜单项处理程序(C C1click)Private Sub CC1_Click()Form31.Show (1)End Sub“课程删除”菜单项处理程序(CC2click)Private Sub CC2_Click()Form32.Show (1)End

13、Sub“学生成绩维护”菜单项处理程序(DD1click)Private Sub DD1_Click()Form41.Show (1)End Sub“学生成绩查询”菜单项处理程序(D D2click)Private Sub DD2_Click()Form42.Show (1)End Sub用户管理模块4.4.1 说明4.4.2创建、删除用户。设定用户权限。4.4.3代码设计上一条(Commandl)处理(Click)Private Sub Command1_Click()Command2.Enabled = TrueAdodc1.Recordset.MovePreviousIf Adodc1.R

14、ecordset.BOF Then Command1.Enabled = False Adodc1.Recordset.MoveFirstEnd IfEnd Sub下一条(Command2)处理(C lick)Private Sub Command2_Click()Command1.Enabled = TrueAdodc1.Recordset.MoveNextIf Adodc1.Recordset.EOF Then Command2.Enabled = False Adodc1.Recordset.MoveLastEnd IfEnd Sub 添加(Command3)处理(Click)Priva

15、te Sub Command3_Click()If Command3.Caption = 添加 ThenCommand3.Caption = 确定Command1.Enabled = FalseCommand2.Enabled = FalseCommand4.Enabled = FalseAdodcl.Recordset.AddNewTextl.SetFocusElseIf Text1.Text = ThenMsgBox (用户名不能为空)Exit SubEnd IfCommand3.Caption = 添加Adodcl.Recordset.UpdateCommand1.Enabled = T

16、rueCommand2.Enabled = TrueCommand4.Enabled = TrueEnd IfEnd Sub删除(Command4)处理(Click)Private Sub Command4_Click()Adodcl.Recordset.DeleteAdodcl.Recordset.MoveNextIf Adodcl.Recordset.EOF ThenAdodcl.Recordset.MoveLastEnd IfEnd Sub退出(Commands)处理(Click)Private Sub Command5_Click()Unload MeEnd Sub学生基本信息管理模块

17、4.5.1 说明学生基本信息的添加、删除、查询。该模块有两个窗体:学生基本信息维护窗体和学生基本信息查询窗体4.5.2学生基本信息维护窗体4521. 窗体设计主要控件属性如下表所示:对象名类型属性值说明Form21窗体Caption学生基本信息维护学生基本信息维护窗体AdodclAdodcConnectionString连接所使用的数据库,ConnectionString、RecordSource属性都在界面中设置。作为DataGrid1的数据源RecordSourceCommandType 2 adCmdTable 学生基本信息表DataGridlDataGridDataSourceAdod

18、c1用于显示学生基本信息表内容Commandl命令按钮Caption退出4522.代码设计窗体装载处理程序(Load)Private Sub Form_Load()DataGridl.AllowAddNew = TrueDataGridl.AllowDelete = TrueDataGrid1.AllowUpdate = True End Sub 退出(Commandl)处理(Click)Private Sub Command1_Click()Unload MeEnd Sub4.5.3学生基本信息查询窗体4.5.3.1.体设计对象名类型属性值说明Form22窗体Caption学生基本信息查询学

19、生基本信息查询窗体AdodclAdodcConnectionString连接所使用的数据库,ConnectionString属性在界面中设置,RecordSource属性在代码中设置。Adodc2AdodcConnectionString连接所使用的数据库,ConnectionString RecordSource 属性 都在界面设置。作为DataList 1的数据源RecordSourceCommandType1 adCmdTextSELECT DISTINCT班级名称 FROM学生基本信息表Checkl复选按钮Caption姓名选择查询条件Check2复选按钮Caption学号Check3

20、复选按钮Caption班级Textl文本框用于输入姓名Text2文本框用于输入学号DataListlDataListRowSourceAdodc2用于选择输入班级名称ListField班级名称DataSourceAdodc2DataListField班级名称DataGridlDataGrid显示查询得到的学生基本信息Command1命令按钮Caption查询Command2命令按钮Caption退出主要控件属性如下表所示:4532.代码设计 查询(Commandl)处理(Click )Private Sub Command1_Click()Dim s1 As String s1 =If Che

21、ckl.Value = 1 ThenIf Textl.Text Thensl = sl & 姓名=& Textl.Text &End IfEnd IfIf Check2.Value = l ThenIf Text2.Text ThenIf sl Thensl = sl & and End Ifsl = sl & 学号=& Text2.Text &End IfEnd IfIf Check3.Value = l ThenIf DataListl.Text ThenIf sl Thensl = sl & and End Ifsl = sl & 班级名称二& DataListl.Text &End I

22、fEnd IfIf sl Thensl = where & slEnd IfAdodcl.RecordSource = select 窗体装载处理程序(Load)Private Sub Form_Load()DataGridl.AllowAddNew = False from 学生基本信息表& slAdodcl.RefreshSet DataGridl.DataSource = AdodclEnd Sub退出(Command2)处理(Click)Private Sub Command2_Click()Unload MeEnd SubDataGridl.AllowDelete = FalseDa

23、taGridl.AllowUpdate = FalseEnd Sub46.选课模块4.6.1说明该模块为一个班级选课。4.6.2课程添加窗体用于课程的添加和查询4.6.2.1.窗体设计Command2命令按钮Caption查询Commands命令按钮Caption退出4622.代码设计 添加(Commandl)处理(Click)Private Sub Command1_Click()Dim s1 As String, s2 As StringOn Error Resume NextIf Text1.Text = Or Text2.Text = ThenMsgBox (输入不能为空)Exit S

24、ubEnd Ifsi = select * from班级课程表where班级名称二s2 = Textl.Text & and 课程名称二& Text2.Text & ” Adodcl.RecordSource = si & s2 Adodc1.RefreshIf Adodcl.Recordset.EOF = False ThenTextl.SetFocusMsgBox ”该记录已存在,请重新输入,警告 Exit SubEnd Ifsi = select * from 班级课程表Adodcl.RecordSource = slAdodcl.RefreshAdodcl.Recordset.Move

25、LastAdodcl.Recordset.AddNewAdodcl.Recordset.Fields(班级名称)=Textl.TextAdodcl.Recordset.Fields(课程名称)=Text2.Text Adodcl.Recordset.Update Adodcl.Refreshsl = select课程名称from班级课程表where班级名称二& Textl.Text & Adodcl.RecordSource = sl Adodcl.RefreshSet DataGridl.DataSource = Adodcl.RecordsetText2.SetFocusText2.Tex

26、t = Exit SubEnd Sub查询(Command2)处理(Click)Private Sub Command2_Click()Dim sl As Stringsl = select课程名称from班级课程表where班级名称二& Textl.Text & Adodcl.RecordSource = siAdodcl.RefreshSet DataGridl.DataSource = Adodcl.Recordset End Sub退出(Command3)处理(Click)Private Sub Command3_Click()Unload MeEnd Sub窗体装载处理程序(L oa

27、d)Private Sub Form_Load()DataGridl.AllowAddNew = FalseDataGridl.AllowDelete = FalseDataGridl.AllowUpdate = False End Sub课程删除窗体4.6.3.1. 窗体设计主要控件属性如下表所示:对象名类型属性值说明Form32窗体Caption课程添加课程删除及修改窗体AdodclAdodcConnectionString连接所使用的数据库,ConnectionString、RecordSource属性都在界面中设置。作为DataList 1的数据源RecordSourceCommand

28、Type1 adCmdTextSELECT DISTINCT 班级名称from班级课程表Adodc2AdodcConnectionString连接所使用的数据库,ConnectionString 在界面中设 置,RecordSource属性在代码中设置。Labell标签Caption班级名称Label2标签Caption课程列表DataListlDataListRowSourceAdodc1用于选择输入班级名称ListField班级名称DataSourceAdodc1DataListField班级名称DataGridlDataGrid显示查询得到的学生基本信息4.6.3.2.代码设计 退出(C

29、ommandl)处理(Click)Private Sub Command1_Click()Unload MeEnd Sub 数据列表框(DataListl)处理(Click)Private Sub DataList1_Click()Dim s1 As Strings1 = select * from 班级课程表 where 班级名称二 & DataList1.Text &Adodc2.RecordSource = s1Adodc2.RefreshSet DataGrid1.DataSource = Adodc2End Sub 窗体装载处理程序(Load) Private Sub Form_Lo

30、ad()DataGrid1.AllowDelete = TrueDataGrid1.AllowUpdate = TrueDataGrid1.AllowAddNew = False End Sub4.7.成绩管理模块4.7.1 说明进行学生成绩的录入及查询。4.7.2成绩录入窗体进行学生成绩的添加、修改及删除。4.7.2.1.窗体设计1&成绩录入课程大学英语VB程序设+大学语文 艺术欣赏请选择班级学号成绩00021100049?000655学号000200050006001S成绩录入退出录入(Commandl)处理(Click)Private Sub Command1_Click()Dim s1

31、 As String, s2 As String, s3 As StringOn Error Resume Nexts1 = select * from 学生成绩表s2 = where 学号= & List2.Text & and s3 = 课程名称二& Listl.Text & Adodc3.RecordSource = sl & s2 & s3Adodc3.RefreshIf Adodc3.Recordset.EOF = False ThenAdodc3.Recordset.Fields(2) = Val(Textl.Text)ElseAdodc3.Recordset.MoveLastAd

32、odc3.Recordset.AddNewAdodc3.Recordset.Fields(0) = List2.TextAdodc3.Recordset.Fields(1) = List1.TextAdodc3.Recordset.Fields(2) = Val(Text1.Text)End IfAdodc3.Recordset.UpdateAdodc3.RefreshListl.Text &sl = select学号,成绩from学生成绩表where课程名称二 &s2 = and学号in (select学号from学生基本信息表 s3 = where 班级名称二 & DataListl.Te

33、xt & ) Adodc3.RecordSource = sl & s2 & s3 Adodc3.RefreshSet DataGrid1.DataSource = Adodc3End Sub退出(Commandl)处理(Click )Private Sub Command2_Click()Unload MeEnd Sub数据列表框(DataListl)处理(Click)Private Sub DataList1_Click()Dim s1 As String, s2 As StringSet DataGrid1.DataSource = Nothings1 = select课程名称from班

34、级课程表s2 = where 班级名称二& DataList1.Text & Adodc2.RecordSource = s1 & s2 Adodc2.RefreshIf Adodc2.Recordset.EOF = True ThenMsgBox 请在班级课程表里添加该班级的课程名称 Exit SubEnd IfList1.ClearAdodc2.Recordset.MoveFirstDo While Adodc2.Recordset.EOF = FalseList1.AddItem Adodc2.Recordset.Fields(0) Adodc2.Recordset.MoveNextLo

35、ops1 = select学号from学生基本信息表 s2 = where 班级名称二& DataList1.Text & Adodc2.RecordSource = s1 & s2 Adodc2.RefreshIf Adodc2.Recordset.EOF = True ThenMsgBox 请在学生信息表里添加该班级Exit SubEnd IfList2.ClearAdodc2.Recordset.MoveFirstDo While Adodc2.Recordset.EOF = FalseList2.AddItem Adodc2.Recordset.Fields(0)Adodc2.Reco

36、rdset.MoveNextLoopEnd Sub窗体装载处理程序(Load)Private Sub Form_Load()DataGrid1.AllowDelete = TrueDataGrid1.AllowAddNew = FalseDataGrid1.AllowUpdate = FalseEnd Sub列表框(Listl)处理(Click)Private Sub List1_Click()Dim s1 As String, s2 As String, s3 As Strings1 = select学号,成绩from学生成绩表where课程名称二 & List1.Text &s2 = an

37、d学号in (select学号from学生基本信息表 s3 = where 班级名称二& DataList1.Text & )”Adodc3.RecordSource = s1 & s2 & s3Adodc3.RefreshSet DataGrid1.DataSource = Adodc3End Sub列表框(List2)处理(Click)Private Sub List2_Click()Text1.Text =End Sub成绩查询窗体进行学生成绩的查询主要控件属,f生如下表所示:对象名类型属性值说明Form42窗体Caption学生成绩查询学生成绩查询窗体AdodclAdodcConnec

38、tionString连接所使用的数据库,ConnectionString在界面中设置,RecordSource属性在代码中设置。Adodc2AdodcConnectionString连接所使用的数据库, ConnectionString在界面中设置, RecordSource属性在代码中设置。Option1(0)单选按钮Caption按班级用于选择查询条件Optionl(l)单选按钮Caption按学号Label1标签CaptionLabel1Label2标签CaptionLabel2Combo1组合框用于选择班级名称Combo2组合框用于选择学号和课程名称DataGrid1DataGrid用

39、于显示查询得到的学生成绩Command1命令按钮Caption退出4731.体设计4732.代码设计公共定义Option ExplicitDim opt As Integer 组合框(Combol)处理(Click)Private Sub Combo1_Click()Dim si As String, s2 As StringSet DataGridi.DataSource = NothingCombo2.ClearIf opt = 0 Thensi = select课程名称from班级课程表where班级名称二s2 = Comboi.Text & group by 课程名称Adodc2.RecordSource = si & s2Elsesi = select学号from学生基本信息表where班级名称二s2 = Comboi.Text & Adodc2.RecordSource = si & s2End IfAdo

温馨提示

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

评论

0/150

提交评论