Hallo,
Lazarus 1.8.4 mit FPC 3.0.4 auf CentOS7
Ich nutze die MyDAC Komponenten von DevArt um auf eine MariaDB zuzugreifen. Dabei habe ich folgendes festgestellt: Wenn bei einem Insert eine Exception auftreten sollte (z.B. weil ich in einem mit NOT NULL definiertem Feld keinen Inhalt habe) dann kommt diese Exception bei meinem Programm nicht an. Ich habe da auch schon Devart angeschrieben, bei denen kommen die Exceptions. Ich verstehe jetzt nicht wo das Problem liegt - wenn ich den fehlerhaften Insert-SQL in einer DBConsole ausführen will, kommt die korrekte Fehlermeldung auch da.
Hat da jemand eine Idee was bei mir falsch läuft?
Hinweis: Die Exception kommt bei mir nicht, egal ob ich das Programm in der IDE ausführen lasse oder nicht. D.h. das hängt nicht an einer unterdrückten Exception.
Edit: wenn ich per raise exception.create() was mache, wird die Exception auch angezeigt, nur eben nicht die Fehlermeldung vom MariaDB Server.
[gelöst] Exception aus Fremdkomponente wird nicht angezeigt
[gelöst] Exception aus Fremdkomponente wird nicht angezeigt
Zuletzt geändert von Lemmy am Do 9. Jan 2020, 19:06, insgesamt 1-mal geändert.
- fliegermichl
- Lazarusforum e. V.
- Beiträge: 1435
- Registriert: Do 9. Jun 2011, 09:42
- OS, Lazarus, FPC: Lazarus Fixes FPC Stable
- CPU-Target: 32/64Bit
- Wohnort: Echzell
Re: Exception aus Fremdkomponente wird nicht angezeigt
Ohne mich damit auszukennen vermute ich, daß die Exception innerhalb der Fremdkomponente abgefangen wird. Vielleicht gibt es da sowas wie einen Event OnError?
- af0815
- Lazarusforum e. V.
- Beiträge: 6209
- Registriert: So 7. Jan 2007, 10:20
- OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
- CPU-Target: 32Bit (64Bit)
- Wohnort: Burgenland
- Kontaktdaten:
Re: Exception aus Fremdkomponente wird nicht angezeigt
Laut Doku gibt es ein OnError auf die Connection.
https://www.devart.com/mydac/docs/devar ... nerror.htm
Dort kann man aber auch Exception unterdrücken.
https://www.devart.com/mydac/docs/devar ... nerror.htm
Dort kann man aber auch Exception unterdrücken.
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).
Re: Exception aus Fremdkomponente wird nicht angezeigt
Danke für Eure Tipps! Lag aber am Ende an der Datenbank. Ich habe Devart mit ins Boot geholt, denen habe ich am Ende sogar ne virtuelle Maschine mit dem Problem bereit gestellt - grund ist
https://mariadb.com/kb/en/sql-mode/
der muss bei MariaDB und neuer auf TRADITIONAL stehen, sonst kommen keine Fehler - die muss man dann mit Show Errors oder Show Warnings sich nach dem ausführen einer SQL vom Server abholen.
Grüße
https://mariadb.com/kb/en/sql-mode/
der muss bei MariaDB und neuer auf TRADITIONAL stehen, sonst kommen keine Fehler - die muss man dann mit Show Errors oder Show Warnings sich nach dem ausführen einer SQL vom Server abholen.
Grüße
- fliegermichl
- Lazarusforum e. V.
- Beiträge: 1435
- Registriert: Do 9. Jun 2011, 09:42
- OS, Lazarus, FPC: Lazarus Fixes FPC Stable
- CPU-Target: 32/64Bit
- Wohnort: Echzell
Re: Exception aus Fremdkomponente wird nicht angezeigt
Prima, dann sei doch so nett und editiere deinen Ursprungspost und schreib "gelöst" vor den Titel