VBA超时DoCmd.RunSQL插入

时间:2013-06-03 15:45:16

标签: sql vba odbc ms-access-2007

在MS SQL Server链接表的DoCmd.RunSQL insert上抛出ODBC连接超时错误的MS Access应用程序出现问题。

我尝试过使用:

    Dim Mydb As Database
    Set Mydb = CurrentDb
    Mydb.QueryTimeout = 900

根据我能找到的最接近的MSDN,但没有用。我可以insert使用SQL Management Studio中的查询运行时间少于3秒来进入该SQL数据库,但是从Access中可以获得此超时。

其他人遇到过这个问题和/或找到了补救措施吗?

2 个答案:

答案 0 :(得分:0)

我建议为此创建一个pass through查询。使用传递查询,您可以在属性表上设置超时选项。它列为

ODBC Timeout

如果将此值设置为0,它将等待查询返回记录。传递查询的另一个好处是SQL Server正在进行实际工作,然后它将所有记录返回给Access,因此它运行效率更高。

答案 1 :(得分:0)

在设计视图中打开查询时,有一个属性ODBC Timeout。 (右键单击空白 - > gt;属性) 您是否尝试将其设置为0(无限)或更高的值? 它对我有用!