欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    vba数据库编程答案.pdf

    • 资源ID:72070313       资源大小:625.65KB        全文页数:22页
    • 资源格式: PDF        下载积分:11.9金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要11.9金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    vba数据库编程答案.pdf

    .VBA 数据库编程技术实验目的1、掌握 connection 对象2、掌握 Recordset 对象3、掌握 Command 对象实验题目9-1 connection 对象的具体连接方法:方法 1Dim conn As ADODB.Connection定义对象类型Set conn=New ADODB.Connection将对象初始化conn.ConnectionString=Provider=Microsoft.Jet.OLEDB.4.0;DataSource=E:/access/vba 数据库编程技术/学生成绩管理.mdb设置连接字符信息conn.open连接对象打开.conn.Close关闭连接对象Set conn=Nothing将连接对象清空方法 2Dim conn As ADODB.Connection定义对象类型Set conn=New ADODB.Connection将对象初始化conn.OpenProvider=Microsoft.Jet.OLEDB.4.0;DataSource=E:/access/vba 数据库编程技术/学生成绩管理.mdb;UID=;PWD=-.conn.CloseSet conn=Nothing方法 3Dim conn As ADODB.Connection定义对象类型Set conn=New ADODB.Connection将对象初始化conn.Open CurrentProject.Connection打开当前正在连接的数据.conn.CloseSet conn=Nothing9-2 在 9-1 的基础上,打开表单学生信息,利用 Recordset 对象获取来自“学生成绩管理.mdb”中“学生”数据表的记录,并显示第一条记录。Private Sub Form_Load()Dim conn As ADODB.Connection定义连接对象类型Dim rs As ADODB.Recordset定义记录集对象类型Set rs=New ADODB.Recordset将记录集对象初始化Set conn=New ADODB.Connection将连接对象初始化-.conn.Open Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:/access/vba数据库编程技术/学生成绩管理.mdb;rs.Open select*from 学生,conn,adOpenKeyset,adLockReadOnlyrs.MoveFirstText0.Value=rs(姓名)Text2.Value=rs(学号)Text4.Value=rs(性别)conn.CloseSet conn=NothingEnd Sub9-3 打开表单增加专业,单击增加按钮增加一条关于专业的的新记录:专业编号:p07,专业名称:电子技术,专业负责人:刘容强。Private Sub Command0_Click()Dim conn As ADODB.Connection定义连接对象类型Dim rs As ADODB.Recordset定义记录集对象类型Set rs=New ADODB.Recordset将记录集对象初始化Set conn=New ADODB.Connection将连接对象初始化-.conn.Open Provider=Microsoft.Jet.OLEDB.4.0;Data Source=E:/access/vba数据库编程技术/学生成绩管理.mdb;rs.Open select*from 专业,conn,adOpenKeyset,adLockOptimisticrs.AddNewrs(专业编号)=P07rs(专业名称)=电子技术rs(专业负责人)=刘容强rs.UpdateMsgBox 已完成新记录的添加,0+32,提示conn.CloseSet conn=NothingEnd Sub9-5 新建一个过程 a,将“专业”数据表中专业名称为“公共基础教学”的专业负责人姓名改为“郑智强”。Public Sub a()Dim conn As ADODB.Connection定义对象类型Set conn=New ADODB.Connection将对象初始化conn.Open CurrentProject.Connection打开当前正在连接的数据Dim comm As ADODB.CommandSet comm=New ADODB.Commandcomm.ActiveConnection=conn-.comm.CommandText=update 专业 set 专业负责人=郑智强 where 专业名称=公共基础教学comm.ExecuteMsgBox 已完成修改,0+32,提示conn.CloseSet conn=NothingSet comm=NothingEnd Sub9-6 打开“学生成绩管理.mdb”,设计课程成绩统计窗体,运行界面如图9-5 所示,要求实现:1、在组合框combo1 中选择一课程编号,则对应的课程名称、学分、任课教师、学时分别显示在对应文本框中2、单击“统计按钮”,则在对应文本框中显示指定课程的所有参考学生人数、课程平均分、60 分以上人数和不及格人数。3、若未指定具体课程编号就单击“统计”按钮,则显示提示信息。Option Compare DatabasePrivate Sub Combo0_Change()Dim rs As ADODB.RecordsetSet rs=New ADODB.RecordsetDim sqlstr As String-.sqlstr=select 课程名称,学时,学分,姓名 from 课程,教师 where 课程.教师编号=教师.教师编号 and 课程编号=&Combo0&rs.Open sqlstr,CurrentProject.Connection,2,2If Not rs.EOF()ThenText4=rs(课程名称)Text6=rs(学分)Text8=rs(姓名)Text10=rs(学时)End Ifrs.CloseSet rs=NothingEnd SubPrivate Sub Command12_Click()Dim rs As ADODB.RecordsetSet rs=New ADODB.RecordsetDim sqlstr As Stringsqlstr=select*from 成绩 where 课程编号=&Combo0&rs.Open sqlstr,CurrentProject.Connection,2,2If Not rs.BOF()Or Not rs.EOF()Thensum=0n=0 x=0-.y=0Do While Not rs.EOF()sum=sum+rs(成绩)n=n+1If rs(成绩)=60 Thenx=x+1Elsey=y+1End Ifrs.MoveNextLoopaver=sum/nText15.Value=nText17.Value=Int(aver*100+0.5)/100Text19.Value=xText21.Value=yElseMsgBox 课程编号为空,请重新选择,0+16,提示End Ifrs.CloseSet rs=NothingEnd Sub-.9-7打开“学生成绩管理.mdb”,设计按课程查阅学生成绩窗体,运行界面如图 9-7 所示,要求实现如下:Public rs As ADODB.RecordsetPrivate Sub Combo0_Change()Dim rs As ADODB.RecordsetSet rs=New ADODB.RecordsetDim sqlstr As Stringsqlstr=select 课程名称,学时,学分,姓名 from 课程,教师 where 课程.教师编号=教师.教师编号 and 课程编号=&Combo0&rs.Open sqlstr,CurrentProject.Connection,2,2If Not rs.EOF()ThenText4=rs(课程名称)Text6=rs(学分)Text8=rs(姓名)-.Text10=rs(学时)End Ifrs.CloseSet rs=NothingEnd SubPrivate Sub Command12_Click()Set rs=New ADODB.RecordsetDim sqlstr As Stringsqlstr=select 学生.学号,姓名,专业名称,成绩 from 学生,专业,成绩 where 学生.专业编号=专业.专业编号&_and 成绩.学号=学生.学号 and 成绩.课程编号=&Combo0.Value&rs.Open sqlstr,CurrentProject.Connection,2,2If Not rs.BOF()Or Not rs.EOF()ThenText15.Value=rs(学号)Text17.Value=rs(姓名)Text19.Value=rs(专业名称)Text21.Value=rs(成绩)Command23.Enabled=TrueCommand24.Enabled=TrueCommand25.Enabled=TrueCommand26.Enabled=True-.ElseMsgBox 课程号为空,请重新指定课程编号,0+16,提示End IfEnd SubPrivate Sub Command23_Click()rs.MoveFirstText15.Value=rs(学号)Text17.Value=rs(姓名)Text19.Value=rs(专业名称)Text21.Value=rs(成绩)End SubPrivate Sub Command24_Click()rs.MovePreviousIf Not rs.BOF()ThenText15.Value=rs(学号)Text17.Value=rs(姓名)Text19.Value=rs(专业名称)Text21.Value=rs(成绩)Elsers.MoveNextText15.Value=rs(学号)-.Text17.Value=rs(姓名)Text19.Value=rs(专业名称)Text21.Value=rs(成绩)MsgBox 已经是首记录,0+64,提示End IfEnd SubPrivate Sub Command25_Click()rs.MoveNextIf Not rs.EOF()ThenText15.Value=rs(学号)Text17.Value=rs(姓名)Text19.Value=rs(专业名称)Text21.Value=rs(成绩)Elsers.MovePreviousText15.Value=rs(学号)Text17.Value=rs(姓名)Text19.Value=rs(专业名称)Text21.Value=rs(成绩)MsgBox 已经是未记录,0+64,提示End IfEnd Sub-.Private Sub Command26_Click()rs.MoveLastText15.Value=rs(学号)Text17.Value=rs(姓名)Text19.Value=rs(专业名称)Text21.Value=rs(成绩)End SubPrivate Sub Form_Activate()Command23.Enabled=FalseCommand24.Enabled=FalseCommand25.Enabled=FalseCommand26.Enabled=FalseEnd Sub9-8在例 9-7 基础上,增加“更新”、“删除”、“新增”和“结束”4 个命令按钮,运行界面如下图所示:-.Public rs As ADODB.RecordsetPrivate Sub Combo0_Change()Dim rs As ADODB.RecordsetSet rs=New ADODB.RecordsetDim sqlstr As Stringsqlstr=select 课程名称,学时,学分,姓名 from 课程,教师 where 课程.教师编号=教师.教师编号 and 课程编号=&Combo0&rs.Open sqlstr,CurrentProject.Connection,2,2If Not rs.EOF()ThenText4=rs(课程名称)Text6=rs(学分)Text8=rs(姓名)Text10=rs(学时)End Ifrs.Close-.Set rs=NothingEnd SubPrivate Sub Command12_Click()Set rs=New ADODB.RecordsetDim sqlstr As Stringsqlstr=select 学生.学号,姓名,专业名称,成绩 from 学生,专业,成绩 where 学生.专业编号=专业.专业编号&_and 成绩.学号=学生.学号 and 成绩.课程编号=&Combo0.Value&rs.Open sqlstr,CurrentProject.Connection,2,2If Not rs.BOF()Or Not rs.EOF()ThenText15.Value=rs(学号)Text17.Value=rs(姓名)Text19.Value=rs(专业名称)Text21.Value=rs(成绩)Command23.Enabled=TrueCommand24.Enabled=TrueCommand25.Enabled=TrueCommand26.Enabled=TrueCommand27.Enabled=TrueCommand28.Enabled=TrueCommand29.Enabled=True-.ElseMsgBox 课程号为空,请重新指定课程编号,0+16,提示End IfEnd SubPrivate Sub Command23_Click()rs.MoveFirstText15.Value=rs(学号)Text17.Value=rs(姓名)Text19.Value=rs(专业名称)Text21.Value=rs(成绩)End SubPrivate Sub Command24_Click()rs.MovePreviousIf Not rs.BOF()ThenText15.Value=rs(学号)Text17.Value=rs(姓名)Text19.Value=rs(专业名称)Text21.Value=rs(成绩)Elsers.MoveNextText15.Value=rs(学号)-.Text17.Value=rs(姓名)Text19.Value=rs(专业名称)Text21.Value=rs(成绩)MsgBox 已经是首记录,0+64,提示End IfEnd SubPrivate Sub Command25_Click()rs.MoveNextIf Not rs.EOF()ThenText15.Value=rs(学号)Text17.Value=rs(姓名)Text19.Value=rs(专业名称)Text21.Value=rs(成绩)Elsers.MovePreviousText15.Value=rs(学号)Text17.Value=rs(姓名)Text19.Value=rs(专业名称)Text21.Value=rs(成绩)MsgBox 已经是未记录,0+64,提示End IfEnd Sub-.Private Sub Command26_Click()rs.MoveLastText15.Value=rs(学号)Text17.Value=rs(姓名)Text19.Value=rs(专业名称)Text21.Value=rs(成绩)End SubEnd SubPrivate Sub Command27_Click()flag=0yn=MsgBox(确定更新成绩吗?,1+32,提问)If yn=1 ThenSet rs=New ADODB.RecordsetDim sqlstr As Stringsqlstr=select*from 成绩rs.Open sqlstr,CurrentProject.Connection,2,2Do While Not rs.EOF()And flag=0If rs(学号)=Trim(Text15.Value)And rs(课程编号)=Trim(Combo0.Value)Thenrs(成绩)=Text21.Valuers.Update-.MsgBox 完成成绩更新!,0+64,提示flag=1Elsers.MoveNextEnd IfLoopIf flag=0 ThenMsgBox 学号或课程编号有变化,无法进行成绩更新!,0+16,提示End Ifrs.CloseSet rs=NothingEnd IfEnd SubPrivate Sub Command28_Click()flag=0yn=MsgBox(确定删除本记录吗?,1+32,提问)If yn=1 ThenSet rs=New ADODB.RecordsetDim sqlstr As Stringsqlstr=select*from 成绩rs.Open sqlstr,CurrentProject.Connection,2,2-.Do While Not rs.EOF()And flag=0If rs(学号)=Trim(Text15.Value)And rs(课程编号)=Trim(Combo0.Value)Thenrs.Deleters.UpdateMsgBox 已完成删除!,0+64,提示Text15.Value=Text17.Value=Text19.Value=Text21.Value=Command23.Enabled=FalseCommand24.Enabled=FalseCommand25.Enabled=FalseCommand26.Enabled=Falseflag=1Elsers.MoveNextEnd IfLoopIf flag=0 ThenMsgBox 学号或课程编号有变化,无法进行成绩更新!,0+16,提示End Ifrs.Close-.Set rs=NothingEnd IfEnd SubPrivate Sub Command29_Click()cmark=0smark=0yn=MsgBox(确定新增成绩信息吗?,1+32,提问)If yn=1 ThenSet rs=New ADODB.RecordsetDim sqlstr As Stringsqlstr=select*from 成绩 where 学号=&Trim(Text15.Value)&and课程编号=&Combo0.Value&rs.Open sqlstr,CurrentProject.Connection,2,2If Not rs.BOF()And Not rs.EOF()ThenMsgBox 成绩表已有记录,无法再新增,0+64,提示cmark=1End Ifrs.CloseSet rs=NothingIf cmark=0 ThenSet rs=New ADODB.Recordset-.sqlstr=select*from 学生 where 学号=&Trim(Text15.Value)&rs.Open sqlstr,CurrentProject.Connection,2,2If Not rs.BOF()And Not rs.EOF()Thensmark=1ElseMsgBox 新增学号不存在,无法新增,0+64,提示End Ifrs.CloseSet rs=NothingIf smark=1 ThenSet rs=New ADODB.Recordsetsqlstr=select*from 成绩rs.Open sqlstr,CurrentProject.Connection,2,2rs.AddNewrs(学号)=Trim(Text15.Value)rs(课程编号)=Trim(Combo0.Value)rs(成绩)=Text21.Valuers.UpdateMsgBox 完成新增操作,0+64,提示rs.CloseSet rs=NothingText15.Value=-Text17.Value=Text19.Value=Text21.Value=Command23.Enabled=FalseCommand24.Enabled=FalseCommand25.Enabled=FalseCommand26.Enabled=FalseEnd IfEnd IfEnd IfEnd SubPrivate Sub Form_Activate()Command23.Enabled=FalseCommand24.Enabled=FalseCommand25.Enabled=FalseCommand26.Enabled=FalseCommand27.Enabled=FalseCommand28.Enabled=FalseCommand29.Enabled=FalseEnd Sub.-

    注意事项

    本文(vba数据库编程答案.pdf)为本站会员(ylj18****70940)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开