Einzelnen Beitrag anzeigen

MarkusB

Registriert seit: 3. Apr 2004
Ort: Hamburg
105 Beiträge
 
#1

DBException identifizieren

  Alt 11. Okt 2004, 14:32
Hi!

Wichtige Stellen in einem Programm werden u.a. mit „try ... except...end“ Blöcken abgesichert, z.B. etwa so:

Delphi-Quellcode:
try
  MSQuery1.SQL.Clear;
  MSQuery1.SQL.Add('create database testdb');
  MSQuery1.Execute;
except
  on e: EDataBaseError do
  begin
      MessageDlg(e.Message, mtError, [mbOK], 0);
  end;
end;
Hier wird versucht auf einem MS-SQL-Server (MSDEA) eine Datenbank zu erstellen. Falls irgend eine DB-Exception ausgelöst wird, dann wird eine Meldung auf dem Bildschirm angezeigt. In der kann z.B. so etwas stehen: „Datenbank testdb existiert schon“. Auf diese Meldung kann der Benutzer nun reagieren (im obigen Fall kann er lediglich die Exception zur Kenntnis nehmen).

So weit so gut. Nun möchte ich einige DB-Exceptions per Programm abhandeln. Damit ich die Exceptions erkennen und entsprechend reagieren kann, muss ich den eindeutigen Errorcode kennen (z.B. „Datenbank existiert schon“ = Errorcode: 123456).

Meine Frage:
Wie kann ich den eindeutigen Errorcode von MS-SQL-Server (MSDEA) der ausgelösten Exception rausfinden?

Viele Grüße
Markus
  Mit Zitat antworten Zitat