Verbindung zur Datenbank beim Laden/Speichern prüfen (Gebundenes Dataset)

  • VB.NET
  • .NET (FX) 4.5–4.8

Es gibt 5 Antworten in diesem Thema. Der letzte Beitrag () ist von AndPod.

    Verbindung zur Datenbank beim Laden/Speichern prüfen (Gebundenes Dataset)

    Hallo

    In meiner Anwendung gibt es ca. 15-20 Formulare, welche alle auf verschiedene Tabellen in einem gebundenen DataSet (MySQL Datenbank) zugreifen. Nun müsste ich theoretisch vor jedem Laden und Speichern prüfen, ob eine Verbindung zur Datenbank besteht. Kann ich das irgendwo im DataSet einmalig hinterlegen, oder muss ich das in jedem Formular beim Laden/Speichern prüfen?

    Gruß, AndPod
    Wäre es nicht besser den Timeout Fehler (der dann kommt) der Verbindung abzufangen? Es bringt dir ja nix da was zu prüfen.
    "Gib einem Mann einen Fisch und du ernährst ihn für einen Tag. Lehre einen Mann zu fischen und du ernährst ihn für sein Leben."

    Wie debugge ich richtig? => Debuggen, Fehler finden und beseitigen
    Wie man VisualStudio nutzt? => VisualStudio richtig nutzen
    Ich poste hier mal den Funktion, welche ich zum überprüfen aufrufe:

    Quellcode

    1. Public Function fncConnStatus() As Integer
    2. Dim objStatus As Object
    3. strConnStatus = ""
    4. Try
    5. Dim taAllgemein = New DBLeiKa.dbLeiKaDataSetTableAdapters.tblAllgemeinTableAdapter
    6. objStatus = taAllgemein.getDBStatus(0)
    7. If IsDBNull(objStatus) OrElse IsNothing(objStatus) Then
    8. strConnStatus = "Fehler beim Auslesen des Datenbankstatus (Datenbank ist gesperrt)"
    9. intConnStatus = 1
    10. ElseIf System.Convert.ToInt16(objStatus) = 1 Then
    11. strConnStatus = "Die Datenbank ist gesperrt"
    12. intConnStatus = 1
    13. ElseIf System.Convert.ToInt16(objStatus) = 0 Then
    14. intConnStatus = 0
    15. Else
    16. strConnStatus = "Fehler beim Auslesen des Datenbankstatus (Datenbank ist gesperrt)"
    17. intConnStatus = 1
    18. End If
    19. Catch ex As Exception
    20. strConnStatus = "Die Datenbank ist nicht verfügbar"
    21. intConnStatus = -1
    22. End Try
    23. Return intConnStatus
    24. End Function



    Ich habe in der Datenbank eine Tabelle mit einem Feld, welches angibt ob die Datenbank durch den Administrator gesperrt wurde (enthält 0 bzw 1). In der Funktion rufe ich den Wert ab bzw. überprüfe, ob überhaupt ein Wert zurück kommt. Mittels Try/Catch fange ich aktuell ob, wenn keine Verbindung zur Datenbank besteht.
    In einer anderen Funktion werte ich den Rückgabewert dieser Funktion aus. Bei einem Rückgabewert ungleich 0 erscheint eine Form, welche periodisch den Datenbankstatus prüft, alternativ kann der Benutzer die Anwendung beenden.

    Für elegantere Möglichkeiten bin ich durchaus offen. Ich wurschtel mich gerade erst in das Thema rein.

    Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „AndPod“ ()