AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Problem mit SQL.Add

Ein Thema von jmich · begonnen am 14. Feb 2022 · letzter Beitrag vom 16. Feb 2022
Antwort Antwort
Seite 2 von 2     12   
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.270 Beiträge
 
Delphi 10.4 Sydney
 
#11

AW: Problem mit SQL.Add

  Alt 15. Feb 2022, 21:16
Hallo,
sehe ich nicht so!

Es ist halt ein Problem, dass hier ankommen,
und die einfachsten Sachen ignorieren.

wenn ich try except benutzen, dann doch bitte richtig.
Heiko
  Mit Zitat antworten Zitat
Benutzerbild von Jasocul
Jasocul

Registriert seit: 22. Sep 2004
Ort: Delmenhorst
1.338 Beiträge
 
Delphi 11 Alexandria
 
#12

AW: Problem mit SQL.Add

  Alt 16. Feb 2022, 06:41
Fahrt mal ein bischen runter, Leute.

Als ich die Eingangsfrage gelesen hatte, dachte ich auch, dass da wesentliche Grundlagen nicht beachtet werden. OK, gedacht habe ich da was anderes, aber formulieren kann man es ja netter.
Dann habe ich genauer hingesehen:
- TE seit 2007 hier mit 15 Beiträgen
- D5
- Simple SQL-Fehler (und andere Grundlagenfehler)
Folglich wenig/keine Erfahrung, Gelegenheitsprogrammierer, o.ä.

Das kann man einfach mal berücksichtigen, wenn man antwortet und muss nicht mit dem Hammer drauf hauen. Auch wenn man diese Sachen ständig wiederholen muss. Der harte Kern der DP liest hier sicher täglich mit, aber die meisten kommen nur hierher, wenn sie ein Problem haben und wissen nicht, was man hier regelmäßig wiederholen muss.

Also nächstes mal einfach erstmal entspannt zurücklehnen und überlegen, was und wie man antwortet. Oder man hält einfach mal die Finger still. Auf die Grundlagen werden auch andere hinweisen.
Peter
  Mit Zitat antworten Zitat
rokli

Registriert seit: 21. Mär 2009
Ort: Rödinghausen
297 Beiträge
 
Delphi 10.4 Sydney
 
#13

AW: Problem mit SQL.Add

  Alt 16. Feb 2022, 09:12
Hi zusammen,

hat eigentlich jemand mal zum TRY - EXCEPT Block was inhaltlich gesagt?

Also ich mache das so

Delphi-Quellcode:
   try
      qry2.Open;
   except
      on E: Exception do begin
         ShowMessage(e.Message);
         ShowMessage(qry2.SQL.Text);
      end;
   end;
Das ist eine ganze einfach Variante, um überhaupt was zu sehen.

Wenn im SQL ein Fehler enthalten ist, wird durch den EXECPT das Programm in die Fehlerbehandlung geschickt. Durch den ersten SHOWMESSAGE die Fehlermeldung ansich gezeigt und der zweit SHOWMESSAGE zeigt mir den Inhalt der defekten SQL, damit ich mit der Fehleranalyse beginnen kann.

Und im wirklich Leben übergebe ich diese Daten an eine Prozedur, die mir diese Fehlermeldung (mit Programmnamen, Username, wann das gewesen ist, etc.) wiederum in eine DB schreibt. Da sollte dann natürlich kein Fehler drin passieren

Vielleich ist das ja noch eine kleine Anregung aus der geworfenen Fehlermeldung Nutzen zu ziehen ...

Beste Grüße

@Sinspin: Sorry - Du hattest das auch schon gezeigt! (Nachtrag)
Rolf
wenn nicht anders angegeben, schreibe ich zu D7, XE2 und MS SQL - ansonsten fragen Sie ihren Administrator oder einen Operator. Update 06/2020: Delphi 10.4 Sydney

Geändert von rokli (16. Feb 2022 um 09:16 Uhr)
  Mit Zitat antworten Zitat
BerndS

Registriert seit: 8. Mär 2006
Ort: Jüterbog
480 Beiträge
 
Delphi 11 Alexandria
 
#14

AW: Problem mit SQL.Add

  Alt 16. Feb 2022, 10:31
Da wurde schon drauf eingegangen.
Ich persönlich würde aber diese Variante bevorzugen und nur die Message ergänzen und die Anzeige der Exception der App überlassen oder zumindest nur einmal Showmessage aufrufen.

Delphi-Quellcode:
   try
     qry2.Open;
   except
      on E: Exception do
      begin
        E.Message := E.Message + #13 + qry2.SQL.Text;
        raise;
      end;
   end;
Bernd
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.136 Beiträge
 
Delphi 12 Athens
 
#15

AW: Problem mit SQL.Add

  Alt 16. Feb 2022, 11:04
Wenn "manueller" Zeilenumbruch, dann bitte #10 oder #13#10 oder sLineBreak, denn #13 wird manchmal garnicht als Zeilenumbruch von gewissen Komponenten/Programmen erkannt.

#13 aka CR heißt "vor zur ersten Spalte" (Carriage Return) und #10 aka LF heißt "in nächste Zeile" (Line Feed)
Somit ist Windows eigentlich der Einzige, der es richtig macht, genau so, wie die Drucker

Die Einzigen, die #13 hatten, war Apple und auch die haben das vor Jahren aufgegeben (sich die #10 von Linux geklaut).
Bleibt aktuell nur noch das kranke RichEdit im Windows, welches auch diesen Mist baut, wobei Delphi dort Eins drauf setzt und noch mehr Mist damit baut, weil es für die #13#10 daraus macht, aber das nur bei der Hälfte der APIs, womit die Indize von Chars im Text nicht mit SelStart/SelLength übereinstimmen.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:32 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