编译时提示,连接无法执行此操作,上下文可能已经被关闭呀无效
Private Sub Form_Load()
 Dim rstdepart As New adodb.Recordset
     Dim strSql As String
     Dim lng As String
     
     
     strSql = " SELECT 项目名称 from 图纸表 where FCode='" & Trim(Me.txtFields(0).Text) & "'"
     
     rstdepart.CursorLocation = adUseClient
     
     rstdepart.Open strSql, gcnnserver, adOpenForwardOnly, adLockReadOnly
txtFields(0).Text = rstdepart("项目名称").ValueEnd Sub在标准模块里已经定义好了连接
 gstrServerName = "chrissky"
     gstrDBName = "test"
     gstrDBLogName = "sa"
     gstrSysPWD = ""     
     gstrConnectString = "Provider=SQLOLEDB.1" _
                         & ";Persist Security Info=False" _
                         & ";User ID=" & gstrDBLogName _
                         & ";PWD=" & gstrSysPWD _
                         & ";Initial Catalog=" & gstrDBName _
                         & ";Data Source=" & gstrServerName

解决方案 »

  1.   

    gcnnserver?是连接对象,检查一下有没有打开?
      

  2.   

    模块中做了如下定义
    Public gcnnserver  As ADODB.Connection
      

  3.   

    打开之后就提示未设置变量或with变量
      

  4.   

    gcnnserver.open
    后面应该是由参数的。ado的应用,必须在连接对象打开以后,才可以使用。
    以下是一个打开*.mdb文件的函数。可以参考一下'DB 接続
    Public Const gstrConnectProvider$ = "Microsoft.Jet.OLEDB.4.0"Public Function fnInitConnet(strConnet As String) As Boolean
        On Error GoTo Error_proc
        If gConnetJPS Is Nothing Then
            Set gConnetJPS = New adodb.Connection
        End If
            
        gConnetJPS.Provider = gstrConnectProvider
            
        gConnetJPS.Open gstrCurentPath + "\" + strConnet, "admin", ""
         
        fnInitConnet = True
        Exit Function
    Error_proc:
        
        gstrErrorCode = ERRNO_NOCONNECT
        fnInitConnet = False
    End Function
      

  5.   

    gcnnserver.ConnectString = "...."
    gcnnserver.open
      

  6.   

    rstdepart.Open strSql, gcnnserver, adOpenForwardOnly, adLockReadOnly
    txtFields(0).Text = rstdepart("项目名称").Value
    =========
    改为:
    rstdepart.Open strSql, gstrConnectString, adOpenForwardOnly, adLockReadOnly
    txtFields(0).Text = rstdepart("项目名称").Value