数据库应用课程设计说明书---学生成绩管理系统内容摘要:
CRect rect。 GetClientRect(amp。 rect)。 CDC dcMem。 (amp。 dc)。 CBitmap bmpBackground。 (IDB_BITMAP1)。 //IDB_BITMAP1 是对应图的 ID BITMAP bitmap。 (amp。 bitmap)。 CBitmap *pbmpOld=(amp。 bmpBackground)。 (0,0,(),(),amp。 dcMem,0,0,SRCCOPY)。 这样设置后静态文本框就显得难看了,于是再在要添加图片的对话框类向导中 Messages 中选择 WM_CTRCOLOR 对其编辑,在 OnCtlColor()函数中加入如下代码: if(nCtlColor==CTLCOLOR_STATIC) //对所有的 STATIC 控件的属性进行设定 { pDCSetBkMode(TRANSPARENT)。 return (HBRUSH)::GetStockObject(NULL_BRUSH)。 } 华北科技学院课程设计说明书 12 如果要使编辑框透明,则添加如下代码,这样编辑框内 容会重叠,可以选择性的设置。 if(nCtlColor==CTLCOLOR_EDIT) //对所有的 Edit 控件的属性进行设定 { pDCSetBkMode(TRANSPARENT)。 return (HBRUSH)::GetStockObject(NULL_BRUSH)。 } 图 登录界面 登录界面的用户名通过数据库访问代码如下: CDatabase database。 (华北科技学院成绩管理 ,FALSE,FALSE,ODBC。 ,FALSE)。 CRecordset rs(amp。 database)。 UpdateData(TRUE)。 CString str。 (select * from 用户 where 用户名 =39。 %s39。 ,m_name)。 CRecordset rs1(amp。 database)。 (AFX_DB_USE_DEFAULT_TYPE,str)。 if(()) 华北科技学院课程设计说明书 13 { MessageBox(用户名输入错误。 )。 return。 } (select * from 用户 where 用户名 =39。 %s39。 and 密码 =39。 %s39。 ,m_name,m_password)。 (AFX_DB_USE_DEFAULT_TYPE,str)。 if(()==0) { MessageBox(密码输入错误。 )。 } else { CMainDlg dlg。 ()。 //进入主界面 CNcistSSMDlg::OnCancel()。 } ()。 注册 新 用户 注册用户界面如图所示,新注册的账户存于数据库中的用户表中。 通过相关代码设置用户名和密码都不为空,并且弹出提示框。 详细代码见附录。 图 注册新用户 华北科技学院课程设计说明书 14 图 注册错误提示 系统的详细设计 主界面设计 主界面添加了菜单栏,用于各种信息查询操作和软件帮助信息。 通过引入图片设置对话框背景图片。 还可以设置静态文本组 件 让其显示时间。 主界面如图 所示。 图 系统主界面 华北科技学院课程设计说明书 15 显示时间方法:添加两个静态文本组件,设置它们 大小相同并放置在同一水平位置,第一个文本标题为“时间:”,第二个不设置标题,改变其 ID 为: IDC_STATIC_TIME,然后添加OnTimer()函数,代码设置 如下 : void CMainDlg::OnTimer(UINT nIDEvent) { CDialog::OnTimer(nIDEvent)。 CString str。 CTime theTime = CTime::GetCurrentTime()。 (%02d:%02d:%02d,(),(),())。 SetDlgItemText(IDC_STATIC_TIME,str)。 CDialog::OnTimer(nIDEvent)。 } 适当设置文本框字体颜色、文本颜色和组件背景色就可以做到美观的显示时间了。 HBRUSH hbr = CDialog::OnCtlColor(pDC, pWnd, nCtlColor)。 if(nCtlColor==CTLCOLOR_STATIC) { pDCSetTextColor(RGB(0,0,0))。 pDCSetBkColor(RGB(7,255,246))。 //文字背景色 HBRUSH b=CreateSolidBrush(RGB(7,255,246))。 //控件背景色 return b。 } return hbr。 菜单栏 设计 菜单栏前三个菜单都为查询菜单,通过 SQL 查询语句显示查询结果。 初始化状态为显示全部结果, 若记录太多 可 按主码值查询,若要返回初始状态,点击刷新按钮即可。 可以为每个窗口设置适当的图片背景。 (1) 院系查询 院系 查询菜单提供系别、教研室和班级的详细信息。 单击相应 菜单 实现 对应的查询 功能。 华北科技学院课程设计说明书 16 图 图 界面 华北科技学院课程设计说明书 17 图 界面 图 界面 华北科技学院课程设计说明书 18 (2)信息查询 信息 查询菜单提供教师信息、学生信息和课程信息的详细查询。 单击相应菜单实现对应的查询功能。 图 界面 图 界面 华北科技学院课程设计说明书 19 图 界面 图 界面 华北科技学院课程设计说明书 20 (3)成绩查询 成绩 查询菜单提供按不同方式对学 生成绩的详细查询。 单击相应菜单实现对应的查询功能。 图 图 界面 华北科技学院课程设计说明书 21 图 界面 图 按课程查询成绩 界面 华北科技学院课程设计说明书 22 管理模块 设计 管理模块在主界面主面板上,用于对各个数据表的更新操作。 数据操作部允许控制操作,若有空值则提示错误。 (1) 系别管理 系别管理可以通过系号来确定系别,从而对系别信息进行操作。 不允许有空值操作。 图 系别管理 界面 (2) 教研室管理 教研室管理通过教研室号 来 确定教研室,从而对教研室信息 进行操作。 不允许有空值操作。 华北科技学院课程设计说明书 23 图 教研室管理 界面 (3) 班级管理 班级管理可以通过班号来确定班级,从而对班级信息进行操作。 不允许有空值操作。 图 班级管理 界面 华北科技学院课程设计说明书 24 (4) 教师管理 教师管理通过教师号来确定教师, 从而对教师信息进行 操作。 图 教师管理 界面 (5) 学生管理 学生管理可根据学号唯一确定学生,从而对信息进行添加、删除、修改操作。 图 学生管理 界面 华北科技学院课程设计说明书 25 (6) 课程管理 课程管理 通过课程号 来 确定课程信息,从而对 课程信息进行添加、删除、修改操作。 图 界面 (7) 成绩管理 成绩管理通过学号与课程确定某学生的某门课成绩 并可按照 学号、课程号来修改 成绩。 图 华北科技学院课程设计说明书 26 总 结 通过 一周的时间终于完成了华北科技学院 学生 成绩 管理系统 的设计开发 , 系统的 基本的功能已经实现。 个人觉得数据库设计比较完美,查询、修改都很方便。 系统本身也不仅仅局限于成绩的管理,更有教师、课程等的管理。 比较完善的实现了学生成绩的数字化管理。 课 程 设 计 之前担心自己想象的系统无法实现预期效果,但是在不断的努力和勇敢的尝试下终于如期待中的那样完成了任务。 总结经验就是要明白自己做的是什么,要 对自己的系统有一个清晰的概念,这样设计起来才会比较方便。 由于时间紧迫,系统 功能尚有欠缺 ,但 我 已经觉得挺满意 了。 有些功能不是不能实现,而是限于时间紧迫。 我想课程设计虽然结束了,但是我的系统没有结束。 我会在以后的生活中继续完善它。 以前 C++课程设计做的很不好,功能单一。 当然那时候对 C++语言本身不是很精通。 能力是一个不断提高的过程,不能急于求成。 在这 一 周做课程设计中,收获了很多。 因为这次课程设计设计的知识面非常广。 从数据库方面来说,涉及到数据库设计的五个步骤 :需求分析、概念结构设计、逻辑结构设计、物理结构设计 和运行调试。 数据库的设计严重影响着系统的功能,如果数据库设计不够合理,前台操作就不能正常运行。 在运行过程中我发现数据库的设计比较合理,查询时特别方便。 这为以后的开发积累了很宝贵的经验。 从 MFC 编程方面来说又对 MFC 编程有了进一步的提高, 让系统不再单调,通过有关设置使系统更为个性化。 通过 MFC 程序来访问 并修改 数据库,从中体会到了编程的乐趣。 看到自己开发的系统实现了一个 又一 个功能 ,会有一种特别 快乐 的 感觉。 学以致用,这才是学习的目的。 当然,系统的开发离不开好的资料和同学的交流。 在这次课程设计中深深感受到了 同学之间交流合作的重要性。 交流不但可以发现新的问题,提高解决问题的效率,而且可以快速的学习到新的知识。 最后感谢这次 课程设计 中给予我帮助的老师和同学,是你们的帮助才使我的系统有了突破性的进展。 华北科技学院课程设。数据库应用课程设计说明书---学生成绩管理系统
相关推荐
() End If End Sub ③ 管理登陆窗口 Public Function check(ByVal user As String, ByVal pswd As String) 这个函数主要是用来验证用户名和密码是否正确,及根据不同的权限出现不同的 button If user = Or pswd = Then MsgBox(用户名和密码不能为空 ) Else () Dim sqlstr
2 = 0 39。 连接数据库 39。 Dim myconn1 As = New (data source=SALAN。 integrated security=SSPI。 initial catalog=地基沉降 ) 39。 Dim mymd As New 39。 = myconn1 39。 = select * from 矩形中点应力系数表 where 长宽比 = amp。 n1 amp。
库管理系统, SQL Server 2020 具有可靠的安全性,更快的存储速度,高度的兼容性,因此,应用 SQL Server 2020 作为后台数据库为系统的开发提供了强有力的支持,并对以后软件的运行提供了坚实的基础。 Visual Studio 2020 和 SQL Server 2020 都是微软公司的产品,所以具有良好的兼容性,而且 SQL Server 2020
80039。 ,39。 20039。 ,39。 360039。 ) insert 工资表 values(39。 001139。 ,39。 400039。 ,39。 50039。 ,39。 40039。 ,39。 410039。 ) insert 工资表 values(39。 001239。 ,39。 400039。 ,39。 10039。 ,39。 50039。 ,39。 360039。 )
Dim myreader As SqlDataReader Dim sql As String = select * from stu_info where snum=39。 amp。 Username amp。 39。 Dim myd As New SqlCommand(sql, myconn) = myd () myreader = () () = (1) If IsDBNull((4))
end。 end。 确定按钮代码: procedure (Sender: TObject)。 begin if = 39。 39。 then begin ShowMessage(39。 类别编号不能为空。 39。 )。 Exit。 end。 if = 39。 39。 then begin ShowMessage(39。 类别名称不能为空。 39。 )。 Exit。 end。 := 39。