Access开发培训
网站公告
·Access专家课堂QQ群号:151711184    ·Access快速开发平台下载地址及教程    ·欢迎加入Access专家课堂微信群!    ·如何快速搜索本站文章|示例|资料    
您的位置: 首页 > 技术文章 > Access数据库-查询/SQL语句

RunSQL方法-执行access操作查询

时 间:2012-07-12 11:55:08
作 者:竹笛   ID:8  城市:上海  QQ:2851379730点击这里给张志发消息
摘 要:操作查询共有四种类型:删除、更新、追加与生成表,通过建立操作查询,可以实现数据的删除、更新、追加与生成新的表,建立操作查询有一个不利的地方,就是数据库中的查询对象太多,而如果用VBA代码来实现,则可以少去很多查询对象,下面以删除查询为例进行学习。
正 文:

       请下载示例“3.2.8 用VBA代码执行删除查询.mdb”,在这个示例的基础进行本文档的学习。点击下载此附件

      删除查询可以从一个或多个表中删除一组记录。首先打开随书示例“3.2.8用VBA代码执行删除查询.mdb”,运行表tblSalelist,数据如图3.116所示:


      
    图3.116销售明细

      假定广州分公司的数据不全,需要重新导入时,就需要将广州分公司的销售数据全部删除,这时,就可以使用以下代码来删除所有广州分公司的销售数据:


Sub DelQry()
    Dim strSQL As String
    strSQL = "Delete tblSalelist.* " _
           & "FROM tblSalelist " _
           & "Where (((tblSalelist.comSale)='广州分公司'));"
    DoCmd.RunSQL strSQL
End Sub


      如何去用VBA代码来执行查询代码,通过上面的代码我们学习了一下,也可以说是掌握了,但是,上面的SQL代码是如何写出来的,这个是关键,下面来学习如何写出删除查询的SQL代码。
      单击对象中的【查询】,再单击上方的【新建】,如图3.117所示:


       
      图3.117写删除查询SQL代码(1)

      这时,会出现新建查询对话框,如图3.118所示:


       
     图3.118写删除查询SQL代码(2)

      选择设计视图,单击【确定】按钮后,出现显示表,如图3.119所示:


       
      图3.119写删除查询SQL代码(3)

      选择表tblSalelist,单击【添加(A)】按钮,再单击【关闭(C)】按钮后,画面如图3.120所示:


       
      图3.120写删除查询SQL代码(4)

      选择*和comSale字段,如图3.121所示:


       
      图3.121写删除查询SQL代码(5)

      在菜单栏上选择【查询(Q)】,单击子菜单 ,如图3.122所示:


       
      图3.122写删除查询SQL代码(6)

      然后,在条件栏中输入”广州分公司”,如图3.123所示:


       
      图3.123写删除查询SQL代码(7)

      保存查询,将名称设置为qryDel,这样,删除查询就建立完毕了,结果如图3.124所示:


       
      图3.124写删除查询SQL代码(8)

      选中qryDel,单击 进入查询qryDel的设计界面,如图3.125所示:


       
      图3.125写删除查询SQL代码(9)

      在菜单栏选择【视图(V)】中的子菜单 ,如图3.126所示:

      
      图3.126写删除查询SQL代码(10)

      这时,就出现了这个查询的SQL代码,如图3.127所示:


       
      图3.127写删除查询SQL代码(11)

      新建一个窗体frmTest,在frmTest窗体上新建一个命令按钮btnTest,在btnTest的单击事件中,将上面的SQL复制到VBA代码中,稍加修改就可以在VBA代码中使用了,对比一下本节前面所写的SQL代码:


Private Sub btnTest_Click()
    Dim strSQL As String
    strSQL = "Delete tblSalelist.* " _
           & "FROM tblSalelist " _
           & "Where (((tblSalelist.comSale)='广州分公司'));"
    DoCmd.RunSQL strSQL
End Sub


      说明:在上面的代码中," _ 放在上一行的末尾和&放在下一行的开头,用途是将两行连接起来。广州分公司前后的双引号改成了单引号。

      同理,更新、追加与生成表查询都可以采用上述方法来复制到SQL代码,应用到VBA代码中。




Access软件网官方交流QQ群 (群号:483923997)       Access源码网店

常见问答:

技术分类:

相关资源:

专栏作家

关于我们 | 服务条款 | 在线投稿 | 友情链接 | 网站统计 | 网站帮助