SQL 数据库课程设计学生成绩系统Word文档下载推荐.docx
《SQL 数据库课程设计学生成绩系统Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《SQL 数据库课程设计学生成绩系统Word文档下载推荐.docx(32页珍藏版)》请在冰豆网上搜索。
![SQL 数据库课程设计学生成绩系统Word文档下载推荐.docx](https://file1.bdocx.com/fileroot1/2022-11/26/3d65c864-4370-4bb6-a71b-23ac406b015e/3d65c864-4370-4bb6-a71b-23ac406b015e1.gif)
布尔
3.1.2学生基本信息表
包括学号、姓名、电话、地址、班级名称、性别。
学号
姓名
电话
地址
班级名称
性别
3.1.3班级课程表
包括班级名称、课程名称。
课程名称
3.1.4学生成绩表
包括学号、课程名称、成绩。
成绩
数值(单精度浮点型)
3.2.数据库中各表关系
学生基本信息表与班级课程表通过班级名称字段相关联,学生基本信息表与学生成绩表通过学号字段相关联,班级课程表与学生成绩表通过课程名称字段相关联。
4.系统实现
4.1.标准模块(公有模块)
4.1.1标准模块中的数据定义
用于定义全局变量及过程。
本系统定义了当前用户名及用户类型。
序号
变量名
1
UserName
String
2
UserType
Boolean
4.1.2标准模块代码设计
OptionExplicit
PublicUserNameAsString
PublicUserTypeAsBoolean
4.2.系统登录模块
4.2.1说明
特定的用户才能登录到系统。
4.2.2
窗体设计
系统登录窗体的窗体类型为Form,界面如下图所示:
主要控件属性如下表所示:
对象名
类型
属性
值
说明
FrmLogin
窗体
Caption
学生成绩管理系统登录
学生成绩管理系统登录窗体
Label1
标签
用户名:
Label2
密码:
Text1
文本框
Text
用于输入用户名
Text2
用于输入密码
cmdOk
命令按钮
确定
确定当前输入的用户名和密码,进行用户登录。
登录成功后进入主界面。
如果三次输入错误的用户和密码,程序将自动退出
cmdCancel
取消
取消操作,退出程序
Adodc1
Adodc
ConnectionString
连接所使用的数据库,ConnectionString属性在界面中设置,RecordSource属性在代码中设置。
4.2.3代码设计
●公共定义
DimCount1AsInteger
●窗体装载处理程序(Load)
PrivateSubForm_Load()
Count1=0‘错误次数清零
EndSub
●取消按钮(cmdCancel)处理程序(Click)
PrivateSubcmdCancel_Click()
UnloadMe‘系统退出
●确定按钮(cmdOk)处理程序(Click)
PrivateSubcmdOk_Click()
Dims1AsString
DimPasswordAsString
OnErrorResumeNext
IfText1.Text="
"
Then‘用户名为空,则退出
MsgBox("
用户名不能为空,请重新输入"
)
Text1.SetFocus
ExitSub
EndIf
‘按输入的用户名进行查询
s1="
SELECT*from用户表WHERE用户名='
&
Text1.Text&
"
'
Adodc1.RecordSource=s1
Adodc1.Refresh
IfAdodc1.Recordset.EOF=FalseThen‘判断查询结果
UserName=Adodc1.Recordset.Fields(0)‘有该用户名,即用户名正确
Password=Adodc1.Recordset.Fields
(1)
UserType=Adodc1.Recordset.Fields
(2)
IfPassword=Text2.TextThen‘判断密码是否正确
UnloadMe‘密码正确,关闭当前窗体
FrmMain.Show‘显示主界面窗体
Else
密码错误,请重新输入"
)‘密码错误,提示
Text2.SetFocus
Text2.Text="
EndIf
Else‘没有该用户名,即用户名错误
MsgBox"
用户名错误,请重新输入"
Text1.Text="
Count1=Count1+1‘错误次数累计
IfCount1>
=3Then
错误超过3次,系统退出"
UnloadMe
4.3.主界面模块
4.3.1说明
4.3.2窗体设计
主界面模块窗体类型为MDIForm,界面如下图所示。
4.3.3代码设计
●窗体变为活动窗体处理程序(MDIForm-Activate)
PrivateSubMDIForm_Activate()
WindowState=2‘窗体最大化状态
StatusBar1.Panels
(1).Text="
用户名:
UserName‘在状态栏显示用户名、用户类型
IfUserType=TrueThen
StatusBar1.Panels
(2).Text="
用户类型:
管理员"
普通用户"
IfUserType=FalseThen‘对普通用户设某些菜单项不可用
AA1.Enabled=False
BB1.Enabled=False
CC.Enabled=False
DD1.Enabled=False
Toolbar1.Buttons
(1).Enabled=False‘对普通用户设工具栏的某些按钮不可用
Toolbar1.Buttons(3).Enabled=False
Toolbar1.Buttons(6).Enabled=False
Toolbar1.Buttons(7).Enabled=False
Toolbar1.Buttons(9).Enabled=False
●定时器(Timer1)处理程序(Timer)
PrivateSubTimer1_Timer()
StatusBar1.Panels(3).Text=Now‘在状态栏中显示当前时间
●工具栏(Toolbar1)处理程序(ButtonClick)
PrivateSubToolbar1_ButtonClick(ByValButtonAsMSComctlLib.Button)
SelectCaseButton.Index
Case1
Form11.Show
(1)‘用户管理
Case3
Form21.Show
(1)‘学生基本信息维护
Case4
Form22.Show
(1)‘学生基本信息查询
Case6
Form31.Show
(1)‘课程添加
Case7
Form32.Show
(1)‘课程删除
Case9
Form41.Show
(1)‘学生成绩维护
Case10
Form42.Show
(1)‘学生成绩查询
Case12
UnloadMe‘系统退出
EndSelect
●“用户管理”菜单项处理程序(AA1-Click)
PrivateSubAA1_Click()
Form11.Show
(1)
●“退出”菜单项处理程序(AA3-click)
PrivateSubAA3_Click()
●“学生基本信息维护”菜单项处理程序(BB1-click)
PrivateSubBB1_Click()
Form21.Show
(1)
●“学生基本信息查询”菜单项处理程序(BB2-click)
PrivateSubBB2_Click()
Form22.Show
(1)
●“课程添加”菜单项处理程序(CC1-click)
PrivateSubCC1_Click()
Form31.Show
(1)
●“课程删除”菜单项处理程序(CC2-click)
PrivateSubCC2_Click()
Form32.Show
(1)
●“学生成绩维护”菜单项处理程序(DD1-click)
PrivateSubDD1_Click()
Form41.Show
(1)
●“学生成绩查询”菜单项处理程序(DD2-click)
PrivateSubDD2_Click()
Form42.Show
(1)
4.4.用户管理模块
4.4.1说明
创建、删除用户。
设定用户权限。
4.4.2窗体设计
4.4.3代码设计
●上一条(Command1)处理(Click)
PrivateSubCommand1_Click()
Command2.Enabled=True
Adodc1.Recordset.MovePrevious
IfAdodc1.Recordset.BOFThen
Command1.Enabled=False
Adodc1.Recordset.MoveFirst
●下一条(Command2)处理(Click)
PrivateSubCommand2_Click()
Command1.Enabled=True
Adodc1.Recordset.MoveNext
IfAdodc1.Recordset.EOFThen
Command2.Enabled=False
Adodc1.Recordset.MoveLast
●添加(Command3)处理(Click)
PrivateSubCommand3_Click()
IfCommand3.Caption="
添加"
Then
Command3.Caption="
确定"
Command4.Enabled=False
Adodc1.Recordset.AddNew
用户名不能为空"
Adodc1.Recordset.Update
Command4.Enabled=True
●删除(Command4)处理(Click)
PrivateSubCommand4_Click()
Adodc1.Recordset.Delete
●退出(Command5)处理(Click)
PrivateSubCommand5_Click()
4.5.学生基本信息管理模块
4.5.1说明
学生基本信息的添加、删除、查询。
该模块有两个窗体:
学生基本信息维护窗体和学生基本信息查询窗体
4.5.2
学生基本信息维护窗体
4.5.2.1.窗体设计
Form21
学生基本信息维护
连接所使用的数据库,ConnectionString、RecordSource属性都在界面中设置。
作为DataGrid1的数据源
RecordSource
CommandType
2-adCmdTable
学生基本信息表
DataGrid1
DataGrid
DataSource
用于显示学生基本信息表内容
Command1
退出
4.5.2.2.代码设计
DataGrid1.AllowAddNew=True
DataGrid1.AllowDelete=True
DataGrid1.AllowUpdate=True
●退出(Command1)处理(Click)
4.5.3学生基本信息查询窗体
4.5.3.1.窗体设计
Form22
学生基本信息查询
学生基本信息查询窗体
Adodc2
连接所使用的数据库,ConnectionString、RecordSource属性都在界面设置。
作为DataList1的数据源
CommandType
1-adCmdText
SELECTDISTINCT班级名称FROM学生基本信息表
Check1
复选按钮
选择查询条件
Check2
Check3
班级
用于输入姓名
用于输入学号
DataList1
DataList
RowSource
用于选择输入班级名称
ListField
DataListField
显示查询得到的学生基本信息
查询
Command2
4.5.3.2.代码设计
●查询(Command1)处理(Click)
s1="
IfCheck1.Value=1Then
IfText1.Text<
>
s1=s1&
姓名='
IfCheck2.Value=1Then
IfText2.Text<
Ifs1<
and"
学号='
Text2.Text&
IfCheck3.Value=1Then
IfDataList1.Text<
班级名称='
DataList1.Text&
where"
s1
Adodc1.RecordSource="
select*from学生基本信息表"
SetDataGrid1.DataSource=Adodc1
●退出(Command2)处理(Click)
DataGrid1.AllowAddNew=False
DataGrid1.AllowDelete=False
DataGrid1.AllowUpdate=False
4.6.选课模块
4.6.1说明
该模块为一个班级选课。
4.6.2课程添加窗体
用于课程的添加和查询
4.6.2.1.窗体设计
Form31
课程添加
课程添加窗体
用于输入班级名称
用于输入课程名称
显示该班级课程
添加
Command3
4.6.2.2.代码设计
●添加(Command1)处理(Click)
Dims1AsString,s2AsString
OnErrorResumeNext
OrText2.Text="
输入不能为空"
select*from班级课程表where班级名称='
s2=Text1.Text&
and课程名称='
Adodc1.RecordSource=s1&
s2
IfAdodc1.Recordset.EOF=FalseThen
该记录已存在,请重新输入"
,"
警告"
select*from班级课程表"
Adodc1.Recordset.Fields("
班级名称"
)=Text1.Text
课程名称"
)=Text2.Text
select课程名称from班级课程表where班级名称='
SetDataGrid1.DataSource=Adodc1.Recordset
●查询(Command2)处理(Click)
●退出(Command3)处理(Click)
Pr