【译文】代码来帮助你调试SQL代码—POPQuery
时 间:2012-04-22 10:50:58
作 者:周芳 ID:24526 城市:上海
摘 要:用代码创建查询。
正 文:
原作者:Juan Soto 翻译:周芳
【译文】代码来帮助你调试SQL代码—POPQuery
我在我的代码中经常使用SQL,我不喜欢创建查询,因为它可能会被用户在使用中删除或者改变,所以我就在代码中使用查询。
我经常建立SQL字符串,然后我需要在Access的查询里去调试他们,过去我是在立即窗口上得到我的SQL字符串的值然后粘贴在一个新的查询窗口。我已经厌倦了这样做,所以我创建了一个小功能来为我做这件事:
Public Function PopQuerySQL(strSQL As String, strQueryName As String)
Dim qdf As DAO.QueryDef
On Error GoTo PopQuerySQL_Error
'关闭查询
DoCmd.Close acQuery, strQueryName
‘删除查询
DoCmd.DeleteObject acQuery, strQueryName
’创建查询
Set qdf = CurrentDb.CreateQueryDef(strQueryName, strSQL)
Set qdf = Nothing
‘打开查询
DoCmd.OpenQuery strQueryName, acViewNormal
On Error GoTo 0
Exit Function
PopQuerySQL_Error:
If Err.Number = 7874 Then
Resume Next 'Query does not exist
End If
MsgBox "Error" & Err.Number & "(" & Err.Description & ") in procedure PopQuerySQL of Module mdlAPI"
End Function
我现在可以在立即窗口使用我的SQL代码:
PopQuery (strSQL,"qryTemp")
它节省了我很多时间,我希望它也同样对你有好处!
【原文】
Code to help you debug SQL code – POPQuery
I use SQL in my code a lot, I’m not a fan of creating queries and then referencing them in my code since users may delete or change them.
Often I build SQL strings and then I need to debug them in the query Access grid, in the past I would get the value of my SQL string in the immediate window
and paste the SQL in a new query window. I got tired of doing it all the time so I created a small function that will do it for me:
Public Function PopQuerySQL(strSQL As String, strQueryName As String)
Dim qdf As DAO.QueryDef
On Error GoTo PopQuerySQL_Error
DoCmd.Close acQuery, strQueryName
DoCmd.DeleteObject acQuery, strQueryName
Set qdf = CurrentDb.CreateQueryDef(strQueryName, strSQL)
Set qdf = Nothing
DoCmd.OpenQuery strQueryName, acViewNormal
On Error GoTo 0
Exit Function
PopQuerySQL_Error:
If Err.Number = 7874 Then
Resume Next 'Query does not exist
End If
MsgBox "Error" & Err.Number & "(" & Err.Description & ") in procedure PopQuerySQL of Module mdlAPI"
End Function
I now use the code with my SQL variable in the immediate window:
PopQuery (strSQL,"qryTemp")
It saves me a lot of time and I hope it does the same for you!
Access软件网官方交流QQ群 (群号:54525238) Access源码网店
常见问答:
技术分类:
源码示例
- 【源码QQ群号19834647...(12.17)
- Access对子窗体数据进行批...(10.30)
- 最精简的组合框行来源数据快速输...(10.25)
- Access仿平台的多值选择器...(10.24)
- 【Access日期区间段查询】...(10.22)
- 【Access源码示例】VBA...(10.12)
- Access累乘示例,Acce...(10.09)
- 数值8.88,把整数8去掉,转...(10.08)
- 【Access自定义函数】一个...(09.30)
- 【Access选项卡示例】Ac...(09.09)
学习心得
最新文章
- Access系统自带的日期选择器不...(11.08)
- 分享一下Access工程中的acw...(11.07)
- Access快速开发平台--让有权...(11.04)
- Access快速开发平台--审批选...(11.01)
- ACCESS两张表先各自排序,然后...(10.31)
- Access对子窗体数据进行批量+...(10.30)
- SqlServer中如何用SQL命...(10.29)
- Access报表中的分组功能用代码...(10.28)
- 用Access计算库存结余的一个方...(10.26)
- 最精简的组合框行来源数据快速输入(...(10.25)