我有一个使用excel VBA构建的应用程序-它使用Azure SQL作为数据库。 我可以使用提供程序:SQLOLEDB
连接到VBA中的数据库Example Connection String:
Provider=SQLOLEDB;
Server=tcp:ServerName,1433;
Database=DatabaseName;
Uid=Username@ServerName;
Pwd={Password};
Encrypt=yes;
Connection Timeout=60;
一切都能找到-我能够将数据库中的数据检索到ADODB记录集中,并可以在VBA中使用记录集数据。 当我尝试以任何方式更新记录集大约10-15分钟后,出现以下错误:
[DBNETLIB][ConnectionWrite (send()).]General network error. Check your network documentation.
该错误在使用不同Azure SQL数据库的不同计算机上使用不同的Internet连接持续存在。 我首先认为可以通过告诉VBA每5分钟自动运行一次查询来解决此问题(即防止连接空闲时间过长),如果查询失败,则重新连接ADODB连接。 然后,当我尝试更新记录集时,我收到一个VBA“连接失败”错误。
我该怎么做才能解决此问题? 如何强制ADODB记录集保持与Azure数据库的连接?