![]() |
Datenbank: MYSQL • Version: 10 • Zugriff über: DEVART mysql
Connection Fehler von MYSQL Server auswerten
Hallo in die Runde,
ich versuche jetzt schon etwas länger, eventuell falsche Angaben im Connection String mit den Rückgabewerten des MYSQL Servers auszuwerten. Für die Verbindung mit TUniConnection von DEVART zur MYSQL Datenbank wird u.a. (das Übliche) Username, Passwort, IP-Adresse, Port etc. bei einer ersten Installation des Programms abgefragt. Das sind sechs Felder, in denen irgendwelche fehlerhafte Daten vom Benutzer eingetragen werden könnten. Das würde ich gerne so auswerten, das nicht nur das übliche "Access Denied for User ‘root’@’localhost’" aufploppt, sondern z.B. IP-Adresse oder Port etc. falsch . MYSQL sendet entsprechende Zahlencodes die ich in
Code:
auswerten könnte.
E: EDAError
Dazu muss ich aber
Code:
oder
fMainForm.coMariaDb.Connected = true
Code:
oder auch
fMainForm.coMariaDb.Connect
Code:
aufrufen, mit der Folge, das es bei fehlerhaften Angaben ein ConnectionTimeOut gibt und danach erst mit der Auswerten des Fehlercodes weitergeht (leider nur wenn ich das fertige Programm außerhalb von Delphi starte).
open
Im Debug Modus komme ich überhaupt nicht weiter, Delphi bleibt dann in der Zeile
Code:
hängen und möchte gerne, das ich abbreche.
fMainForm.coMariaDb.Connect
Meine bisheriges Suchen zu diesem Thema hat mich nicht wirklich weitergebracht. Daher hoffe ich, hier Hilfe zu finden.
Best Grüße Gerd |
AW: Connection Fehler von MYSQL Server auswerten
Ein try except Block um Dein connect sollte Dich deutlich weiterbringen...
|
AW: Connection Fehler von MYSQL Server auswerten
@stifflersmom
Delphi-Quellcode:
habe ich so gemacht, Delphi bleibt aber im Debugmodus beim connenct hängen und weigert sich, nach der Timeout Meldung weiter durchs Programm zu gehen.
try
myDbConnection.connect; except on E: EDAErorr...... Grüße gerd |
AW: Connection Fehler von MYSQL Server auswerten
Dann ist es vielleicht kein
Code:
?
EDAErorr
|
AW: Connection Fehler von MYSQL Server auswerten
Zitat:
Zitat:
Also z.B. bei falschem NutzerName oder Passwort. Ein falscher Host/IP/... oder Port und schon kann der DB-Server garnicht antworten, womit also der Fehler von der Connection-Komponente kommt. Es kann passieren, dass es keinen Timout gibt, bzw. dass er nicht so lange dauert, wie man angibt. Bei pgDAC und auch DataSnap habe/hatte ich mal so ein Problem. Egal was ich bei den TimeOut-Property angab, es dauerte meistens viel länger. Das Problem wurde dann ganz einfach gelöst. Der Hersteller entfernte einfach diese Property (in neueren Versionen für ein aktuelleres Delphi) :stupid: |
Alle Zeitangaben in WEZ +1. Es ist jetzt 03:08 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz