碰到这样一个问题,在循环中执行如下代码的时:
rsSignCard.Open "Select workofftype from #signcard Where workofftype is not null and sign_data=" & rsTemp!mem_id & " and adate='" & rsTemp!adate & "'", cnDatabase, adOpenForwardOnly, adLockReadOnly
会偶尔出现这个错误:[DBNETLIB][ConnectionOpen (Connect()).]SQL Server 不存在或拒绝访问,抓到错误之后,再resume执行此代码,又可以正常执行通过;请教这是什么原因?

解决方案 »

  1.   

    重复打开记录集错误:
    这样处理:
    if rsSignCard.state=1 then rsSignCard.close
    rsSignCard.Open "Select workofftype from #signcard Where workofftype is not null and sign_data=" & rsTemp!mem_id & " and adate='" & rsTemp!adate & "'", cnDatabase, adOpenForwardOnly, adLockReadOnly 
      

  2.   

    是连接本地数据库 还是远程数据库??看样子是cnDatabase,这个的连接不稳定造成的。
      

  3.   

    做一个模块,把连接放在模块里,然后用 ado的部件试试呢
      

  4.   

    1,检查网络是否正常
    2,在SQL所在机器安装SQL的最新补丁
    3,在SQL所在的机器关闭防火墙,包括windows自带的防火墙