Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi ADOConnection prüfen (https://www.delphipraxis.net/106179-adoconnection-pruefen.html)

daniel71 6. Jan 2008 21:14

Datenbank: MSSQL • Version: 2005 • Zugriff über: ADOConnection

ADOConnection prüfen
 
Hallo

Ich möchte am Anfang meines Programms die Verbindung zur Datenbank prüfen, ich habe dies so versucht:

Delphi-Quellcode:
try
  ADOConnection1.Connected:= True;
 except
  on E:Exception do
  begin
   E.Message := 'Fehler beim Verbinden mit der Datenbank'#13#10 + E.Message;

  end;
 end;
Ich habe im Connectionstring absichtlich der Datenbankname falsch geschrieben, leider kommt die original Fehlermeldung.
Die Exceptionanweisung wird gar nicht behandelt.

Was mache ich falsch?

Gruss Daniel

alzaimar 6. Jan 2008 21:20

Re: ADOConnection prüfen
 
Doch doch, ich vermute, Du startest die Anwendung in der Delphi-IDE und hast 'Anhalten bei Exceptions', oder wie das in der deutschen Version heißt, angekreuzt. Such mal in den Debugger-Optionen (irgendwas mit Exceptions oder Ausnahmen).

Jelly 6. Jan 2008 21:22

Re: ADOConnection prüfen
 
Ja... Unter Optionen / Debugger Optionen / Codegear Debugger / Sprach Exceptions und dann dort "Bei Sprach Exceptions benachichtigen" wegklicken (bezogen auf Delphi 2007)

daniel71 6. Jan 2008 21:45

Re: ADOConnection prüfen
 
Hallo

Irgendwie funktioniert das nicht...

Ich habe mal bei (Delphi6) untet Tool -> Debugger Optionen -> Sprach-Exeptions -> alles weggeklikt.

Jetzt erscheint nur noch eine verkürzte Fehlermeldung und das Programm wird nicht angehalten.
Die aber auch nicht von mir ist:
Cannnot open database "AM1" requested by the login. The login failer

Auch wenn ich ein exe erzeuge erscheint diese Fehlermeldung.

haentschman 6. Jan 2008 22:39

Re: ADOConnection prüfen
 
Hallo daniel71...

Vorschlag ...
Delphi-Quellcode:
try
  ADOConnection1.Connect; //Verbindungsaufbau...kenne die genaue Syntax von ADO nicht
except
  on E:Exception do
  begin
   E.Message := 'Fehler beim Verbinden mit der Datenbank'#13#10 + E.Message;

  end;
end;
... Verbindet zur Datenbank und liefert 'True' als Ergebnis ansonsten durchläuft er except...end

daniel71 6. Jan 2008 22:53

Re: ADOConnection prüfen
 
Soviel ich weis ist ADOConnection1.Connected:= True; der Verbindungsaufbau zur Datenbank bei ADO

Was ich bis jetzt rausgefunden habe ist:

- Die angezeigte Fehlermeldung ist von einer, im Progamm späteren, SQL Querry
- Wenn ich mit einzelnen Anweisungen den code Schritt für Schritt durchgehe, macht das Programm die except Anweisung durch. Die Fehlermeldung wird aber nicht angezeigt.

Im übrigen hattet ihr völlig recht mit euren Hinweisen, es ist das Flag bei "bei Delphi-Exceptions stoppen" das die Fehlermeldung vor der except Anweisung auslöst.

Ich vermute ich rufe blos die Fehlermeldung falsch auf.

Kann mir da jemand auf die Sprünge helfen?

daniel71 6. Jan 2008 23:00

Re: ADOConnection prüfen
 
:wall:

Hier fehlt ein raise;

Delphi-Quellcode:
try
  ADOConnection1.Connected:= True;
except
  on E:Exception do
  begin
   E.Message := 'Fehler beim Verbinden mit der Datenbank'#13#10 + E.Message;
   raise;
  end;
end;
vielen Dank für eure Hilfe.


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:19 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz