![]() |
Datenbank: Mysql • Version: 5.5.31 • Zugriff über: Delphi
Delphi - Mysqlerror ausgeben?
Hallo,
um mir etwas Arbeit zu vereinfachen, habe ich mir ein Programm geschrieben das alle sql Befehle in einer .txt abklappert, dies ist dann nötig wenn ich z.b. eine zu große Liste mit bspw. 300 mio Zeichen habe. Das ganze funktioniert auch ganz gut, nur weiß ich nicht wie ich auf einen Sql-Error reagieren kann. Beispielsweise möchte ich einen INSERT durchführen, aber eine Spalte existiert nicht. Mysql/phpmyadmin gibt mir dann "#1054 - Unknown column 'BETRAG3' in 'field list'" als Msg aus, doch wie kann ich die gleiche in Delphi ausgeben?
Delphi-Quellcode:
Ich habe gedacht, dass man hier eventuell mit Try except arbeitet und mehr als nur ein Showmessage anwendet... Leider komme ich nicht drauf.
try
if query.active then query.Close; query.sql.Text := abfrage; query.ExecSQL; except showmessage('Fehler!'); end; Hat jemand eine Anregung/Tipp ? Gruß |
AW: Delphi - Mysqlerror ausgeben?
Du musst mit der Exception-Message arbeiten. Frei ohne Compiler getippt:
Delphi-Quellcode:
try
... except on e: Exception ShowMessage('Fehler: ' + e.Message); end; |
AW: Delphi - Mysqlerror ausgeben?
Oh nein so einfach? Und da dachte ich aufgrund meiner Suche wäre die Antwort um einiges schwerer.. Wenn man weiß wonach man suchen muss wird man jetzt schnell findig..
Vielen Dank!! |
AW: Delphi - Mysqlerror ausgeben?
Es geht übrigens auch sowas
Delphi-Quellcode:
// in System.ExceptObject steckt die letzte/aktuelle Exception (also zufällig die von dem aktuellen Except-Block)
// und SysUtils.ShowException zeigt den normalen Exception-Dialog an try ... except ShowException(ExceptObject, ExceptAddr); end;
Delphi-Quellcode:
// entspricht in etwa dem ShowMessage(E.Message);
try ... except on E: Exception do ShowException(E, nil); end;
Delphi-Quellcode:
// entspricht in etwa dem ShowMessage('Fehler: ' + E.Message);
try ... except on E: Exception do begin E.Message := 'Fehler: ' + E.Message; ShowException(E, nil); end; end; |
AW: Delphi - Mysqlerror ausgeben?
Darf ich noch fragen welche Komponente du nutzt um auf den MySQL Server zuzugreifen ?
|
AW: Delphi - Mysqlerror ausgeben?
Hallo Back2Code,
ich nutze eine TmySQLDatabase mit zugehöriger Dataset und query. Die Elemente habe ich von "DAC for MySQL". Gruß |
AW: Delphi - Mysqlerror ausgeben?
Zitat:
Spart man sich evt. jede Menge try-except Behandlungen und hat es an zentraler Stelle. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:51 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-2025 by Thomas Breitkreuz