我有一个带有SQL 2005后端的Access 2003前端。 有时,用户会收到以下错误,并且前端会崩溃。 关于我如何解决这个问题的任何指示?
[ODBC SQL Server Driver] Communication link failure
答案 0 :(得分:2)
通过谷歌搜索和阅读我在这个主题上所做的,在我看来,这可能只是MS Access中的一个错误,他们从来没有打扰过修复,即:没有解析。强>
我看到的症状和其他人似乎有的症状是Access对SQL Server的连接变得“糟糕”,一旦达到此状态,除了重新启动Access,期间之外什么都不会解决。尽管这让人大吃一惊,但这完全有可能 - 如果与连接管理相关的代码(在MS Access本身或在ODBC提供程序中)不检查连接状态的有效性并且总是认为它很好,那么我们会看到我们 看到的症状。
你认为,微软肯定会解决这个问题,但这不是第一次。
我在使用Microsoft Access Project(* .adp)时看到了相同的行为,因此问题似乎出现在MS Access本身(而不仅仅是ODBC)中。
答案 1 :(得分:0)
同意上述评论,问题似乎是客户端对服务器失去了连续性。如果您使用服务器的主机名,我建议使用IP cos,如果它纯粹是一个dns问题,如果该剂量工作则会解决它,那么它是网络上的问题,如包丢失或服务器过载问题或其他问题那个方向
答案 2 :(得分:0)
我已经看到了死锁事务的这种行为。以下是可能发生这种情况的示例:
BeginTrans
'Insert/Update/Delete record in table Employees:
CurrentDb.Execute "DELETE * FROM Employees WHERE EmpID=1"
'Attempt to read from Employees table before committing; Access hangs
Set rs = CurrentDb.OpenRecordset("Employees")
CommitTrans
解决方法是:
答案 3 :(得分:0)
有同样的错误:
意见: - 设置一个链接到MSSQL表的访问数据库 - 从家里,通过VPN,无法打开任何表 - 每次都有这个错误 - 从DSN,做了测试连接,测试没问题 - ping了DSN中使用的MSSQL服务器主机名,它很好 - 但是,当我用DS替换DSN中的服务器主机名并重新启动访问时,一切正常。
结论: - 我不确定它是使用IP地址还是更改DSN设置并保存在某处翻转开关但它有效...希望我不必经常重复...我们将看到......
HTH