Rubrik: Datenbanken · ADO | VB-Versionen: VB5, VB6 | 17.06.05 |
ADO-Fehler effektiver auswerten Mit Hilfe des ADODB.Error-Objekts lassen sich Fehler beim ADO-Datenbankzugriff effizienter auswerten. | ||
Autor: Dieter Otter | Bewertung: | Views: 21.307 |
www.tools4vb.de | System: Win9x, WinNT, Win2k, WinXP, Win7, Win8, Win10, Win11 | kein Beispielprojekt |
In aller Regel verwendet man zur Fehlerauswetung in VB das Err-Objekt. Beim ADO-Datenbankzugriff allerdings sollte man das ADODB.Error-Objekt verwenden, da man über dieses Objekt alle seit der letzten DB-Aktion aufgetretenen Fehler abfragen und somit auch besser auswerten kann. Zudem bekommt man über spezielle Eigenschaften eine detailiertere Fehlerbeschreibung.
Beispiel:
Statt Fehler beim ADO-Zugriff wie folgt abzufangen...
' ADO-Datenbankaktion On Error Resume Next ... If Err.Number <> 0 Then MsgBox "Fehler: " & CStr(Err.Number) & " " & Err.Description End If
... sollte man besser das ADODB.Error-Objekt verwenden:
Dim oError As ADODB.Error ' ADO-Datenbankaktion On Error Resume Next ... If oConn.Errors.Count > 0 Then ' alle ADO-Fehler des Connection-Objektes durchlaufen Dim sError As String For Each oError In oConn.Errors sError = sError & "Fehler: " & CStr(oError.Number) & " " & oError.Description & vbCrLf & _ "NativeError: " & oError.NativeError & vbCrLf & _ "SQL-Status: " & oError.SQLState & vbCrLf & _ "Quelle: " & oError.Source & vbCrLf & vbCrLf Next MsgBox sError End If