![]() |
Datenbank: Firebird • Version: 2.5 • Zugriff über: Delphi7
Exception bei Datenbankanmeldung
Ich habe eine wahrscheinlich blöde Frage:
Wenn die Datenbankverbindung auf Grund fehlerhafter Login-Daten nicht zustande kommt, will ich das abfangen. Ich dachte, das funktioniert mit try... except... aber ich weiß nicht genau wie? Am besten soll dann die komplette Anwendung geschlossen werden.
Delphi-Quellcode:
...
try IB_Database1.Connect; except ShowMessage('Login-Daten feherhaft'); end; |
AW: Exception bei Datenbankanmeldung
Wirft Connect denn eine Exception bei Fehlversuch? Ansonsten könntest Du doch anschließend Connected abfragen, oder täusche ich mich?
|
AW: Exception bei Datenbankanmeldung
Naja, also wenn z.B. das Passwort falsch ist, kommt nach
Delphi-Quellcode:
eine Fehlermeldung vom System und danach erst "meine" Fehlermeldung.
IB_Database1.Connect;
Die Systemmeldung möchte ich gern weg haben, dafür nur meine und das Programm schließen. Wenn die Systemfehlermeldung nicht kommen würde, könnte ich auf connected abfragen, ja, das wäre sogar prima. |
AW: Exception bei Datenbankanmeldung
Achso. Kommt diese System-Fehlermeldung auch, wenn Du das Programm außerhalb von Delphi startest?
|
AW: Exception bei Datenbankanmeldung
Hm, nachdem ich jetzt den Code folgendermaßen geändert habe, nicht mehr:
Delphi-Quellcode:
Allerdings wird an der Stelle die Applikation nicht beendet, was toll wäre.
...
try IB_Database1.Connect; except on ex: Exception do ShowMessage(ex.Message); end; if IB_Database1.Connected then begin ... end else begin Close; end; |
AW: Exception bei Datenbankanmeldung
In welchem Ereignis sind wir denn? Im FormCreate?
|
AW: Exception bei Datenbankanmeldung
Oh, entschuldige, ja im FormCreate
|
AW: Exception bei Datenbankanmeldung
OK, im FormCreate geht ein Close nicht. Du könntest aber z.B. ein privates Boolean-Feld belegen, im OnShow auswerten und dort ggf. closen. Das ist das, was mir spontan einfällt.
|
AW: Exception bei Datenbankanmeldung
Application.Terminate bzw. Halt dürften im FormCreate gehen, wobei ersteres zu bevorzugen wäre, da es etwas "weicher" ist.
|
AW: Exception bei Datenbankanmeldung
Super, das mit dem OnShow hat funktioniert. Danke.
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:35 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