Hi, 各位前輩:
在進行程式處理時, 明明已經發生 DB Error 了, 但程式的 gconn_EMP.Errors.Count 仍然為 0. 可否幫忙找出問題所在,
謝謝各位的協助.
程式內容如下: (VB6 + SP5)

On Error GoTo ErrMsg
  
  Dim lrs_Query As New ADODB.Recordset
  Dim ls_SQL As String
  Dim ls_Code As String

ls_Code = "001"
  ls_SQL = "SELECT EmpCName As Name FROM EMP WHERE EMPID = '" & as_Code & ""
'--> 字串少了右方的 ', 應發生語法錯誤才對,
lrs_Query.CursorLocation = adUseServer
  lrs_Query.Open ls_SQL, gconn_RIS, adOpenForwardOnly, adLockReadOnly
  lrs_Query.MoveFirst
  as_Name = lrs_Query("Name")
  gf_GetNameByCode = 0
  
  Exit Function
  
  
ErrMsg:
  ' === 是否有 DB Error ===
  ' Enumerate Errors collection and display
  ' properties of each Error object.
  
  If gconn_RIS.Errors.Count > 0 Then
    For Each gdberr_Object In gconn_RIS.Errors
      gs_DBError = "Error #" & gdberr_Object.Number & vbCr & _
       "  " & gdberr_Object.Description & vbCr & _
       "  (Source: " & gdberr_Object.Source & ")" & vbCr & _
       "  (SQL State: " & gdberr_Object.SQLState & ")" & vbCr & _
       "  (NativeError: " & gdberr_Object.NativeError & ")" & vbCr
      If gdberr_Object.HelpFile = "" Then
       gs_DBError = gs_DBError & _
         "  No Help file available" & _
         vbCr & vbCr
      Else
       gs_DBError = gs_DBError & _
         "  (HelpFile: " & gdberr_Object.HelpFile & ")" & vbCr & _
         "  (HelpContext: " & gdberr_Object.HelpContext & ")" & _
         vbCr & vbCr
      End If
       
      Debug.Print gs_DBError
      MsgBox gs_DBError
    Next
    gconn_RIS.Errors.Clear
    Resume Next
  End If

' === 是否有 VB Error ===
   If Err.Number <> 0 Then
    MsgBox "VBError" & vbCrLf & Err.Number & vbCrLf & Err.Description
   End If

arrow
arrow
    全站熱搜

    vbqa 發表在 痞客邦 留言(2) 人氣()