数据库原理课程设计学分管理系统.docx
- 文档编号:29566611
- 上传时间:2023-07-24
- 格式:DOCX
- 页数:18
- 大小:5.53MB
数据库原理课程设计学分管理系统.docx
《数据库原理课程设计学分管理系统.docx》由会员分享,可在线阅读,更多相关《数据库原理课程设计学分管理系统.docx(18页珍藏版)》请在冰豆网上搜索。
数据库原理课程设计学分管理系统
·······目录········
1题目要求··································3
2程序截图··································4
3程序代码·································10
4课程设计心得·····························26
题目要求:
设计一个学分管理系统。
假设每位学生必须完成基础课50学分,专业课50学分,选修课24学分,人文类课程8学分和实验性课程20学分才能毕业。
实现下列功能:
1.录入某位学生的学分信息
2.给定学号,显示某位学生的学分完成情况;
3.给定班号,显示该班所有学生的学分完成情况;
4.给定学号,修改该学生的学分信息;
5.按照某类课程的学分高低进行排序;
给定学号,对该学生能否毕业进行确定。
登陆界面如下:
主界面如下:
进行插入操作:
按班号显示操作:
查询结果界面如下:
进行按学号进行查询的界面:
查询结果如下:
排序界面:
查询学生是否能够毕业:
删除操作:
代码如下:
Module1:
PubliccnAsNewADODB.Connection
PublicrsAsNewADODB.Recordset
Form1:
PublicrsAsADODB.Recordset
Subdisp()
SetDataGrid1.DataSource=rs
Fori=0Tors.Fields.Count-1
Text1(i).Text=rs.Fields(i).Value
Next
EndSub
Subrenew()
rs.Close
cn.Close
Setrs=NewADODB.Recordset
SetDataGrid1.DataSource=rs
cn.Open"dsn=123;uid=sa;pwd="
rs.Open"select*fromcredit",cn,adOpenStatic,adLockOptimistic
disp
EndSub
PrivateSubFrame1_DragDrop(SourceAsControl,XAsSingle,YAsSingle)
EndSub
PrivateSubCommand1_Click()
Fori=0To7
Text1(i).Text=""
Next
Text1(0).SetFocus
Text1
(1).Enabled=True
Text1
(2).Enabled=True
Command11.Enabled=True
EndSub
PrivateSubCommand10_Click()
rs.MovePrevious
Ifrs.BOFThen
msg=MsgBox("已达到第一条",48+0,"提示")
rs.MoveFirst
EndIf
disp
EndSub
PrivateSubCommand11_Click()
Text1
(1).Enabled=True
Text1
(2).Enabled=True
insert_str="insertintocreditvalues('"&Text1(0).Text&"','"&Text1
(1).Text&"','"&Text1
(2).Text&"','"&Text1(3).Text&"','"&Text1(4).Text&"','"&Text1(5).Text&"','"&Text1(6).Text&"','"&Text1(7).Text&"')"
IfText1(0).Text<>rs.Fields(0)Then
cn.Execute(insert_str)
MsgBox"插入成功"
Else
MsgBox"重复输入数据"
EndIf
disp
renew
EndSub
PrivateSubCommand12_Click()
renew
EndSub
PrivateSubCommand13_Click()
update_str="updatecreditsetbasic='"&Text1(3).Text&"',major='"&Text1(4).Text&"',soption='"&Text1(5).Text&"',speople='"&Text1(6).Text&"',sexperiment='"&Text1(7).Text&"'wheresno='"&Text1(0).Text&"'"
IfText1(0).Text<>rs.Fields(0)Then
cn.Execute(update_str)
Else
MsgBox"无此内容"
EndIf
renew
EndSub
PrivateSubCommand14_Click()
sno1=InputBox("请输入要删除学生的学号:
","查询",200,100)
delete_str="deletefromcreditwheresno="&sno1
Ifsno1<>""Then
'Ifrs.RecordCount=0Then
'MsgBox"输入学号不正确"
'Else
cn.Execute(delete_str)
disp
renew
'EndIf
Else
MsgBox"error"
EndIf
EndSub
PrivateSubCommand15_Click()
frmLogin.Show
EndSub
PrivateSubCommand2_Click()
Form2.Show
EndSub
PrivateSubCommand3_Click()
Form3.Show
EndSub
PrivateSubCommand4_Click()
Text1(0).SetFocus
Fori=0To7
Text1(i).Text=""
Next
Text1
(1).Enabled=False
Text1
(2).Enabled=False
'disp
EndSub
PrivateSubCommand5_Click()
Form4.Show
EndSub
PrivateSubCommand6_Click()
Dima(4)AsInteger
sno1=InputBox("请输入学生的学号:
","查询",200,100)
Setrs=NewADODB.Recordset
rs.Open"select*fromcreditwheresno='"&sno1&"'",cn,adOpenStatic,adLockOptimistic
Ifrs.RecordCount=0Then
MsgBox"输入学号不正确"
Else
i=0
Forj=3Tors.Fields.Count-1
a(i)=Val(rs.Fields(j).Value)
i=i+1
Next
Ifa(0)>=50Anda
(1)>=50Anda
(2)>=24Anda(3)>=8Anda(4)>=20Then
MsgBox"该学生已修满学分,可以毕业"
Else
MsgBox"该学生由于未修满学分,不能毕业"
EndIf
EndIf
EndSub
PrivateSubCommand7_Click()
rs.MoveFirst
disp
EndSub
PrivateSubCommand8_Click()
rs.MoveLast
disp
EndSub
PrivateSubCommand9_Click()
rs.MoveNext
Ifrs.EOFThen
msg=MsgBox("已达到最后一条",48+0,"提示")
rs.MoveLast
EndIf
disp
EndSub
PrivateSubForm_Load()
Setrs=NewADODB.Recordset
'Setcn=NewADODB.Connection
cn.Open"dsn=123;uid=sa;pwd="
rs.Open"select*fromcredit",cn,adOpenStatic,adLockOptimistic
disp
Command11.Enabled=False
Form1.Visible=False
EndSub
Form2:
PrivateSubCommand1_Click()
Form1.Show
Form2.Hide
EndSub
PrivateSubForm_Load()
classno=InputBox("请输入学生的班号","查询",200,100)
'rs.Close
'cn.Close
'Setrs1=NewADODB.Recordset
Setcn=NewADODB.Connection
Setrs=NewADODB.Recordset
cn.Open"dsn=123;uid=sa;pwd="
rs.Open"select*fromcreditwheresclass='"&classno&"'",cn,adOpenStatic,adLockOptimistic
Ifrs.RecordCount>0Then
SetDataGrid2.DataSource=rs
Else
MsgBox"无此记录!
"
EndIf
EndSub
Form3:
PrivateSubCommand1_Click()
Form1.Show
Form3.Hide
EndSub
PrivateSubForm_Load()
sno=InputBox("请输入学生的学号","查询",200,100)
Setcn=NewADODB.Connection
Setrs=NewADODB.Recordset
cn.Open"dsn=123;uid=sa;pwd="
rs.Open"select*fromcreditwheresno='"&sno&"'",cn,adOpenStatic,adLockOptimistic
Ifrs.RecordCount>0Then
SetDataGrid3.DataSource=rs
Else
MsgBox"无此记录!
"
EndIf
EndSub
Form4:
PrivateSubCommand1_Click()
Form1.Show
Form4.Hide
EndSub
PrivateSubOption1_Click()
subject=InputBox("请输入课程名:
","查询",200,100)
Setcn=NewADODB.Connection
Setrs=NewADODB.Recordset
cn.Open"dsn=123;uid=sa;pwd="
Ifsubject="basic"Orsubject="major"Orsubject="soption"Orsubject="speople"Orsubject="sexperiment"Then
rs.Open"select*fromcreditorderby"&subject,cn,adOpenStatic,adLockOptimistic
SetDataGrid4.DataSource=rs
Else
msg=MsgBox("error",48+0,"提示")
EndIf
EndSub
PrivateSubOption2_Click()
subject=InputBox("请输入课程名:
","查询",200,100)
Setcn=NewADODB.Connection
Setrs=NewADODB.Recordset
cn.Open"dsn=123;uid=sa;pwd="
Ifsubject="basic"Orsubject="major"Orsubject="soption"Orsubject="speople"Orsubject="sexperiment"Then
rs.Open"select*fromcreditorderby"&subject&"desc",cn,adOpenStatic,adLockOptimistic
SetDataGrid4.DataSource=rs
Else
msg=MsgBox("error",48+0,"提示")
EndIf
EndSub
Frmlogin:
DimrsuserAsADODB.Recordset
Publiccn1AsADODB.Connection
'PublicLoginSucceededAsBoolean
PrivateSubcmdCancel_Click()
'设置全局变量为false
'不提示失败的登录
LoginSucceeded=False
End
EndSub
PrivateSubcmdOK_Click()
Dimquery_strAsString
Setrsuser=NewADODB.Recordset
user_str="select*fromuserinfowhereuserid='"&txtUserName&"'andpassword='"&txtPassword&"'"
rsuser.Openuser_str,cn1,adOpenStatic,adLockOptimistic
Ifrsuser.RecordCount>0Then
'Ifrsuser.Fields("power")="admin"Then
'Form1.Enabled=True
'Else
'Form1.Enabled=False
'EndIf
'LoginSucceeded=True
UnloadfrmLogin
MDIForm1.Show
Form1.Show
Else
MsgBox"无效的用户或密码,请重试!
",,"登录"
txtPassword.SetFocus
SendKeys"{Home}+{End}"
EndIf
'cn.Close
'rsuser.Close
EndSub
PrivateSubForm_Load()
'rsuser.Open"select*fromuserinfo",cn,adOpenStatic,adLockOptimistic
Setcn1=NewADODB.Connection
cn1.Open"dsn=123;uid=sa;pwd="
EndSub
课程设计总结:
没接触数据库的时候总是觉得它比较深奥或是不可接近的电脑知识,尽管自己对电脑非常感兴趣,其实还是有些心理上的陌生感。
学习电脑就和我们平时的其它科目学习一样感觉它有永无止境的知识,在这从初接触电脑时连个电脑的键盘都不敢动到现在连硬盘都也修理,其中的过程是多么长啊,数据库是我在高中时候听过,到了大学渐渐了解了些,但就其原理性的内容还不知道,也就是根本就不清楚什么是数据库,只是知道一个所谓的中国字典里的名词。
经过此次的课程设计,我初步明白了数据库的基本原理。
也已经掌握了数据库的基本知识。
我想对我以后的更深度学习打下了基础。
这次课程设计让我知道了让vb连接sql的方法。
其实就是前台和后台的连接。
有了这个思想,我相信对以后是大有裨益的。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 数据库 原理 课程设计 学分 管理 系统