Einzelnen Beitrag anzeigen

nahpets
(Gast)

n/a Beiträge
 
#4

AW: exception exception in module xxxxx at 00000

  Alt 16. Jun 2016, 15:39
Versuch' es mal bitte mit dem Abfangen von EAdoError, das dürfte eine näherliegende Exception für das auftretende Problem sein.

Auszug aus 'nem Programm, das Datenbankfehler abfangen muss:
Delphi-Quellcode:
    
    try
      // Irgendwas, was für 'nen Datenbankfehler sorgen könnte.
    Except
      on e : EAdoError do begin
        slError := TStringList.Create;
        slError.Add(e.Message);
        if con.Errors.Count > 0 then begin
          for i := 0 to con.Errors.Count - 1 do begin
            slError.Add(Format('Number: %d',[con.Errors.Item[i].Number]));
            slError.Add(Format('NativeError: %d',[con.Errors.Item[i].NativeError]));
            slError.Add(Format('Description: %s',[con.Errors.Item[i].Description]));
            slError.Add(Format('Source: %s',[con.Errors.Item[i].Source]));
            slError.Add(Format('HelpFile: %s',[con.Errors.Item[i].HelpFile]));
            slError.Add(Format('SQLState: %s',[con.Errors.Item[i].SQLState]));
          end;
          MessageDlg(slError.Text,mtError, [mbOk],0);
        end else begin
          MessageDlg(e.Message + #13#13 + qrySQL.SQL.Text, mtError, [mbOk], 0);
        end;
        slError.Free;
      end;
      on e : Exception do begin
        MessageDlg(e.Message + #13#13 + qrySQL.SQL.Text, mtError, [mbOk], 0);
      end;
    end;
con ist die TAdoConnection,
qrySQL ist 'ne TADOQuery,
slError 'ne TStringList und i ist ein Integer.

Geändert von nahpets (16. Jun 2016 um 15:43 Uhr) Grund: immer diese überflüssigen Schreibfehler :-(
  Mit Zitat antworten Zitat