vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevAniGif - als kostenlose Vollversion auf unserer vb@rchiv CD Vol.5  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB & Datenbanken
Re: Wenn Serverauslastung sehr hoch ist, dann abbrechen und Verbindung trennen? 
Autor: I.V.
Datum: 19.03.12 13:11

Hallo WB,

das mit dem:
"Wenn das in der CommandTimeout-Eigenschaft festgelegte Intervall abläuft, bevor die Befehlsausführung beendet ist, tritt ein Fehler auf und ADO bricht den Befehl ab."

habe ich schon verstanden.


Ich kann das beschrieben Problem nicht simulieren.
Manchmal tritt es einfach auf und weil ich dann meist nicht da bin, kann ich es nicht nachvollziehen und nicht testen.

Ich weiß nicht, wie ich den Fehler abfangen kann!

Kannst Du mir bitte weiterhelfen?

Danke und Gruß Info

Mein Code sieht jetzt so aus:
Function DB_anbinden() As Boolean
On Error GoTo err
Dim conn As String
    Set cn = New ADODB.Connection
 
    If cn.state = adStateClosed Then
        conn = " UID= Test;PWD=" & "read" & ";dsn=" & "Test"
        With cn
            .ConnectionString = conn
            .CursorLocation = adUseClient
            .ConnectionTimeout = 5
            .CommandTimeout = 10
            .Open
        End With
 
        If cn.state = adStateOpen Then
            DB_anbinden = True
        Else
            DB_anbinden = False
        End If
 
    End If
 
Exit Function
err:
cn.Close
MsgBox err.Description, vbCritical, "Fehler beim Verbindungsaufbau .."
 
End Function
 
Sub cmd_DatenLesen_Click()
    If DB_anbinden = True Then
        daten_lesen (strFilter)
    End If
End Sub
 
 
Sub daten_lesen(strFilter As String)
Dim strSQL As String
Dim oError As ADODB.Error
 
 
 
    Select Case Me.Tag
        Case g_strAuswertungstyp(0):
            strSQL = "SELECT s.schicht_pnr, p.Vorname, p.Nachname, p.ZULAGE," & _
              "p.MW_STAMMKST, p.MW_ALLEKST, p.GRUNDLOHN," _
                & " p.VERR_FAKTOR , p.LOHNKORREKTUr, p.Praemienberechtigt," & _
                "p.beeinfl_Praemien" _
                & " FROM schichtbeleg s inner join personalstamm p on" & _
                "s.schicht_pnr = p.pnr" _
                & strFilter _
                & " group by s.schicht_pnr, s.kst"
 
        Case g_strAuswertungstyp(1):
            strSQL = "SELECT s.schicht_pnr, p.Vorname, p.Nachname, p.ZULAGE," & _
              "p.MW_STAMMKST" _
                & " FROM schichtbeleg s inner join personalstamm p on" & _
                "s.schicht_pnr = p.pnr" _
                & strFilter _
                & " group by s.schicht_pnr"
 
        Case g_strAuswertungstyp(2):
 
    End Select
 
    Set rsPd = New ADODB.Recordset
    rsPd.CursorLocation = adUseClient
    rsPd.CursorType = adOpenKeyset
    rsPd.LockType = adLockReadOnly
 
    On Error Resume Next
    rsPd.Open strSQL, cn, , , adCmdText
    If g_Cn.Errors.Count > 0 Then
  ' alle ADO-Fehler des Connection-Objektes durchlaufen
    Dim sError As String ', sserror As String
    Dim ErrorText() As String
    Dim ErrorTextDet() As String
        For Each oError In cn.Errors
            ErrorText = Split(oError.Description, "]")
            ErrorTextDet = Split(ErrorText(3), ";")
 
            sError = sError & "Fehlernummer: " & CStr(oError.Number) & vbCrLf & _
                    "Fehlerbeschreibung: " & vbCrLf & _
                    "Datenbankanbindung: " & Mid(ErrorText(0), 2) & " " & Mid( _
                    ErrorText(1), 2) & " " & Mid(ErrorText(2), 2) & vbCrLf & _
                    "Fehler: " & ErrorTextDet(0) & vbCrLf & _
                    "Fehlerdetail: " & vbCrLf & _
                     ErrorTextDet(1) & vbCrLf & _
                    "NativeError: " & oError.NativeError & vbCrLf & _
                    "SQL-Status: " & oError.SQLState & vbCrLf & _
                    "Quelle: " & oError.Source & vbCrLf & vbCrLf
        Next
 
        Meldung "Fehler beim öffnen der Datenbank ...", sError, vbOK + _
          vbCritical
    Else
        Daten_Schreiben FG1, rsPd
    End If
 
End Sub

Wer aufhört sich zu verbessern, hört auf gut zu sein.

alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Wenn Serverauslastung sehr hoch ist, dann abbrechen und Verb...1.766I.V.15.03.12 09:39
Re: Wenn Serverauslastung sehr hoch ist, dann abbrechen und ...1.041wb-soft15.03.12 13:43
Re: Wenn Serverauslastung sehr hoch ist, dann abbrechen und ...1.008I.V.15.03.12 19:08
Re: Wenn Serverauslastung sehr hoch ist, dann abbrechen und ...1.035wb-soft15.03.12 21:08
Re: Wenn Serverauslastung sehr hoch ist, dann abbrechen und ...1.145I.V.19.03.12 08:25
Re: Wenn Serverauslastung sehr hoch ist, dann abbrechen und ...1.196wb-soft19.03.12 09:50
Re: Wenn Serverauslastung sehr hoch ist, dann abbrechen und ...1.176I.V.19.03.12 13:11
Re: Wenn Serverauslastung sehr hoch ist, dann abbrechen und ...996wb-soft19.03.12 14:27
Re: Wenn Serverauslastung sehr hoch ist, dann abbrechen und ...1.020I.V.19.03.12 17:19
Re: Wenn Serverauslastung sehr hoch ist, dann abbrechen und ...1.065wb-soft19.03.12 19:42

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel