Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ms-access/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ms access 通过直通查询调用过程时MS Access 2010屏幕挂起_Ms Access_Stored Procedures_Vba_Ms Access 2010 - Fatal编程技术网

Ms access 通过直通查询调用过程时MS Access 2010屏幕挂起

Ms access 通过直通查询调用过程时MS Access 2010屏幕挂起,ms-access,stored-procedures,vba,ms-access-2010,Ms Access,Stored Procedures,Vba,Ms Access 2010,我面临与MS Access 2010性能相关的问题,通过直通查询调用过程,MS Access屏幕挂起。 若我运行这个程序,它花了一个小时来完成并成功地出来,但若我通过vba运行,那个么屏幕并没有响应 Private Sub abc_Click() Dim db As Database Set db = CurrentDb() DoCmd.OpenQuery "PRocedure", acViewNormal, acEdit End Sub 我正在使用用户DSN

我面临与MS Access 2010性能相关的问题,通过直通查询调用过程,MS Access屏幕挂起。 若我运行这个程序,它花了一个小时来完成并成功地出来,但若我通过vba运行,那个么屏幕并没有响应

    Private Sub abc_Click()

    Dim db As Database Set db = CurrentDb()

    DoCmd.OpenQuery "PRocedure", acViewNormal, acEdit   
End Sub
我正在使用用户DSN
请给我建议一些好方法,这样ms access screeen就不会挂起,并且在过程成功完成时会显示出来。

因为过程不会返回任何内容,所以可以使用ADODB使用异步执行

您可以在此处找到一些详细信息:


运行过程时,可以通过定期请求进度表来跟踪过程。当然,应该修改此过程以显示进度。

因为此过程不会返回任何可以使用ADODB异步执行的内容

您可以在此处找到一些详细信息:


运行过程时,可以通过定期请求进度表来跟踪过程。当然,应该修改此过程以显示进度。

看起来您有超时问题。1小时这是很长的时间。当您从某个sql工具运行该过程时,它运行得很好,这是对的吗?过程是否返回了什么?@Sergey:在传递查询中,我已将超时设置为0。是的,使用sql工具,过程运行正常。程序没有返回任何东西。我代表用户发表评论。请建议一些解决此问题的方法。看起来您有超时问题。1小时这是很长的时间。当您从某个sql工具运行该过程时,它运行得很好,这是对的吗?过程是否返回了什么?@Sergey:在传递查询中,我已将超时设置为0。是的,使用sql工具,过程运行正常。程序没有返回任何东西。我代表用户发表评论。请提出一些解决这个问题的办法