数据库工资管理系统课程设计报告.doc
数据库课程设计报告课程设计题目:大学生就业咨询系统 学 生 姓 名: 杨帅专 业 :计算机科学与技术班 级 : 学 号 : 4指 导 教 师: 王蕾日期:2013年12月31日 大学生就业咨询系统1、实验内容: (1)主要的数据表用人单位基本信息表,专业信息表,地区代码表等等。(2)主要功能模块1) 对用人单位的基本信息进行录入、修改、删除等。2) 实现毕业生专业信息的维护。3) 定时发布用人单位的毕业生需求信息。4) 方便的实现对人才需求信息的检索。5) 对用人单位的级别能够自动进行变更。6) 能够对历年的毕业需求信息进行统计、分析。7) 具有数据备份和数据恢复功能。2、实验要求:方便毕业生进行就业信息检索,可考虑将就业信息在网上进行发布。 本数据库总共包含四个数据表,分别是:毕业生信息与人才检索表,企业信息与企业检索表,企业需求信息表,统计与分析表1.毕业生信息与人才检索表:2.企业信息与企业信息检索表:3.企业需求信息表:4.统计与分析表:三、窗体总体设计:1)设计1个登录界面,即:普通用户登录界面(仅供查看),管理员登陆,界面使该系统具有一定的安全性和通用性。2)在VB界面内设计窗体,并书写代码,使其与数据库连接起来,并具有相应功能:窗体大致分为两个部分:用户查看(毕业生信息与人才检索表,企业信息与企业检索表,企业需求信息表,统计与分析表添加、修改、删除、数据备份、数据恢复)。 二、 编程1、用户登入窗口设计窗体代码:Private Sub Command1_Click()If (Text20.Text = "杨帅" And Text21.Text = "4") ThenMsgBox "恭喜你登陆成功并给予权限!", 48, "提示"Form1.ShowUnload MeElse: MsgBox "你输入的账户名和密码错误", 16, "请重新输入"Form1.HideEnd IfForm1.ShowEnd SubPrivate Sub Command2_Click()Text1.Text = " "Text2.Text = " "End SubPrivate Sub Form_Load()Combo3.AddItem "普通用户"Combo3.AddItem "超级用户"End Sub2、主菜单:窗体代码:Private Sub Command1_Click()Form7.ShowEnd SubPrivate Sub 数据的备份与恢复_Click()Form8.ShowEnd SubPrivate Sub 退出_Click(Index As Integer)EndEnd SubPrivate Sub 毕业生信息与人才检索_Click()Form1.HideForm3.HideForm2.ShowForm4.HideForm5.HideEnd SubPrivate Sub 登陆_Click()Form1.HideForm2.HideForm4.HideForm3.HideForm5.HideForm6.ShowEnd SubPrivate Sub 企业信息与企业检索_Click()Form1.HideForm2.HideForm3.ShowForm4.HideForm5.HideEnd SubPrivate Sub 企业需求信息_Click()Form1.HideForm2.HideForm4.ShowForm3.HideForm5.HideEnd SubPrivate Sub 求职信息统计与分析_Click()Form1.HideForm3.HideForm2.HideForm4.HideForm5.ShowEnd Sub3、用户查看窗体:实验代码:Private Sub Command1_Click()Adodc1.Recordset.AddNewEnd SubPrivate Sub Command2_Click()Adodc1.Recordset.DeleteEnd SubPrivate Sub Command3_Click()Text9.Text = ""End SubPrivate Sub Command4_Click()Adodc1.Recordset.UpdateEnd SubPrivate Sub Command5_Click()Form1.ShowForm3.HideForm2.HideForm4.HideForm5.HideEnd Sub(1) Private Sub Command7_Click()(2) Adodc1.Recordset.AddNew(3) Adodc1.Recordset.Fields("学生姓名") = Trim(Text1.Text)(4) Adodc1.Recordset.Fields("学号") = Trim(Text2.Text)(5) Adodc1.Recordset.Fields("专业") = Trim(Text3.Text)(6) Adodc1.Recordset.Fields("性别") = Trim(Text4.Text)(7) Adodc1.Recordset.Fields("学历") = Trim(Text5.Text)(8) Adodc1.Recordset.Fields("年龄") = Trim(Text6.Text)(9) Adodc1.Recordset.Fields("毕业年份") = Trim(Text7.Text)(10) Adodc1.Recordset.Fields("毕业院校") = Trim(Text8.Text)(11) Adodc1.Recordset.Update(12) Adodc1.Refresh(13) End Sub4. 用户查看窗体窗体代码:Private Sub Command1_Click()Adodc2.Recordset.AddNewEnd SubPrivate Sub Command10_Click()Form1.ShowForm3.HideForm2.HideForm4.HideForm5.HideEnd SubPrivate Sub Command11_Click()Adodc2.Recordset.UpdateEnd SubPrivate Sub Command12_Click()Adodc2.Recordset.DeleteEnd SubPrivate Sub Command7_Click()Adodc2.Recordset.AddNewAdodc2.Recordset.Fields("单位名称") = Trim(Text10.Text)Adodc2.Recordset.Fields("单位代号") = Trim(Text11.Text)Adodc2.Recordset.Fields("所在地区") = Trim(Text12.Text)Adodc2.Recordset.Fields("地区代码") = Trim(Text13.Text)Adodc2.Recordset.Fields("单位级别") = Trim(Text14.Text)Adodc2.Recordset.UpdateAdodc2.RefreshEnd SubPrivate Sub Command8_Click()Adodc2.Recordset.UpdateAdodc2.Recordset.Fields("单位名称") = Trim(Text10.Text)Adodc2.Recordset.Fields("单位代号") = Trim(Text11.Text)Adodc2.Recordset.Fields("所在地区") = Trim(Text12.Text)Adodc2.Recordset.Fields("地区代码") = Trim(Text13.Text)Adodc2.Recordset.Fields("单位级别") = Trim(Text14.Text)Adodc2.Recordset.UpdateAdodc2.Recordset.UpdateAdodc2.Recordset.UpdateAdodc2.Recordset.UpdateAdodc2.Recordset.UpdateAdodc2.RefreshEnd SubPrivate Sub Command9_Click()Dim cn As New ADODB.ConnectionDim rs As New ADODB.RecordsetDim sql As StringDim temp As Stringtemp = Trim(Text11.Text)If Len(temp) <> 0 Thencn.Open connsql = "select *from 企业信息与企业检索 where 单位代号='" & temp & "'"rs.Open sql, cn, adOpenForwardOnly, adLockReadOnlyIf rs.EOF <> True ThenText10.Text = rs("单位名称")Text12.Text = rs("所在地区")Text13.Text = rs("地区代码")Text14.Text = rs("单位级别")ElseMsgBox "没有找到该单位代号,请确认", vbCritical, "错误"End Ifcn.CloseElseMsgBox "请输入单位代号"End IfEnd SubPrivate Sub Form_Load()Combo2.AddItem "单位名称"Combo2.AddItem "单位代号"Combo2.AddItem "所在地区"Combo2.AddItem "地区代码"Combo2.AddItem "单位级别"End Sub5. 用户查看窗体Private Sub Command1_Click()Adodc3.Recordset.AddNewEnd SubPrivate Sub Command13_Click()Adodc3.Recordset.UpdateAdodc3.RefreshEnd SubPrivate Sub Command14_Click()Form1.ShowForm3.HideForm2.HideForm4.HideForm5.HideEnd SubPrivate Sub Command15_Click()Adodc2.Recordset.UpdateEnd SubPrivate Sub Command16_Click()Adodc3.Recordset.AddNewAdodc3.Recordset.Fields("单位所在地") = Trim(Text20.Text)Adodc3.Recordset.Fields("单位代号") = Trim(Text16.Text)Adodc3.Recordset.Fields("所需专业") = Trim(Text17.Text)Adodc3.Recordset.Fields("需求量") = Trim(Text18.Text)Adodc3.Recordset.Fields("发布年份") = Trim(Text19.Text)Adodc3.Recordset.UpdateAdodc3.RefreshEnd SubPrivate Sub Command17_Click()If Adodc1.Recordset("代号") = Val(Text1.Text) ThenAdodc1.RecordSource = " select * from 企业需求信息 where 代号=" & Val(Trim(Text1.Text) & ""Adodc1.RefreshElse: MsgBox "你输入的代号不存在", 16, "请重新输入"End IfEnd SubPrivate Sub Command18_Click()Adodc3.Recordset.DeleteEnd Sub6. 用户查看窗体Private Sub Command1_Click()Adodc4.Recordset.AddNewEnd SubPrivate Sub Command19_Click()If Check1.Value = True ThenAdodc4.RecordSource = "select * from 统计与分析 where 年='" + Check1.Caption + Trim(Text9.Text) + "'"Adodc1.RefreshElseIf Check2.Value = True ThenAdodc1.RecordSource = "select * from 统计与分析 where 公司代号='" + Trim(Text9.Text) + "'"Adodc1.RefreshElseIf Check3.Value = True ThenAdodc1.RecordSource = "select * from 统计与分析 where 专业='" + Trim(Text9.Text) + "'"Adodc1.RefreshElseIf Check3.Value = True ThenAdodc1.RecordSource = "select * from 统计与分析 where 地区='" + Trim(Text9.Text) + "'"Adodc1.RefreshEnd IfEnd IfEnd IfEnd IfEnd SubPrivate Sub Command20_Click()Form1.ShowForm3.HideForm2.HideForm4.HideForm5.HideEnd Sub7. 用户查看窗体Private Sub Com_Click()Form1.ShowEnd SubPrivate Sub Command1_Click()Set cn = New ADODB.Connection strcon = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;Initial Catalog=daxueshennjuye;Data Source=acer-pc" cn.ConnectionString = strcon On Error Resume Next cn.Opencn.Execute " BACKUP DATABASE computer to DISK = 'C:AAA.BAK' "MsgBox "数据完全备份已经完成", vbOKOnly + vbInformation, "提醒"'cn.Execute "backup database 工资管理系统 to disk='d:工资管理系统.bak' with name='工资管理系统 backup all',description='Full Backup Of pubs'"'MsgBox "数据完全备份已经完成", vbOKOnly + vbInformation, "提醒"'cn.CloseEnd Sub Private Sub Command2_Click()'BackupDatabase() ' cn.Execute "restore database daxueshennjuye from disk='d:daxueshennjuye.bak' with FILE = 1" Set cn = New ADODB.Connection strcon = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=True;Initial Catalog=daxueshennjuye;Data Source=acer-pc" cn.ConnectionString = strcon On Error Resume Next cn.Open cn.Execute "restore database daxueshennjuye from disk='c:AAA.bak' with FILE=1" ' BACKUP DATABASE MyDB to DISK = 'C:AAA.BAK' MsgBox "数据恢复已经完成", vbOKOnly + vbInformation, "提醒"End Sub'Private Sub Form_Load() 'If cn.Errors.Count > 0 Then 'For i = 0 To cn.Errors.Count - 1 'If cn.Errors(i).Number = - Then ' MsgBox "网络不通或服务器未开,请确认后再试", vbOKOnly + vbInformation, "提醒" 'Unload Me 'Exit Sub 'Exit For 'Next i ' End IfEnd Sub四、实验心得:经过一周多的努力,课程设计基本完成了。在整个课程设计的实践中,我学到很多有用的知识,也积累了不少宝贵的开发经验。比如用ADO链接数据库,SQL语句的应用,VB语言应用等。本设计通过自己的努力,基本满足了大学生就业咨询的基本需要,实现了用户使用的方便以及管理员管理的方便,在界面上力求做到简单实用,在操作方面尽量做到满足用户使用的习惯,但由于自己的水平有限和时间的不足,在很多方面还不完善,有些功能没有在全局上把握好。在今后的学习当中将继续完善此系统,使其功能更加强大,满足用户的更多需求。1、这次课程设计要求一个人开发一个完整的系统,这对我来说是一个相当大的挑战。从数据库设计到设计界面再到程序的编写、调试并运行,都花费了很多心思,界面的设计相对简单,对于我来说真正困的是程序代码的设计和程序调试,通过这次课程设计将VB语言重新复习巩固了一遍,尤其加强了对其应用的能力。在这次设计中遇到了很多实际性的问题,在实际设计中才发现,书本上理论性的东西与在实际运用中的还是有一定的出入的,所以有些问题不但要深入地理解,而且要不断地更正以前的错误思维。一切问题必须要靠自己一点一滴的解决,而在解决的过程当中你会发现自己在飞速的提升。?2、这次课程设计让我重新认识了“三人行,必有我师”,设计期间让我感受颇深的一件事就是,我在一个很简单的问题上耗费了一个下午的时间去调试修改都找不到错误原因,这时同学帮我看了一下马上就指出了错误原因,我后悔没有早让她看看,感觉这就是合作中的优势互补,大家会做的地方可能有所不同,在交流中互相帮助学习就会大大提高效率。3、通过这次设计,我懂得了学习的重要性,了解到理论知识与实践相结合的重要意义,学会了坚持、耐心和努力,这将为自己今后的学习和工作做出了最好的榜样。课程设计期间,用到的很多知识并不全是课本上有的或是老师讲到的,这也考验了我们的自学能力,借助参考书、上网查资料、与同学交流等都是我们学习的途径。