AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Sprachen und Entwicklungsumgebungen Object-Pascal / Delphi-Language Hauptform verschwindet nach Aufruf eines anderen Forms
Thema durchsuchen
Ansicht
Themen-Optionen

Hauptform verschwindet nach Aufruf eines anderen Forms

Ein Thema von DonManfred · begonnen am 12. Okt 2020 · letzter Beitrag vom 19. Okt 2020
 
DonManfred

Registriert seit: 8. Nov 2007
Ort: Düren
55 Beiträge
 
Delphi 10.4 Sydney
 
#9

AW: Hauptform verschwindet nach Aufruf eines anderen Forms

  Alt 13. Okt 2020, 13:44
Warum ExecSQL?

Du hast aber Glück, dass es hier keinen Fehler gibt ... wird nur sinnlos doppelt ausgeführt, das SELECT.

Dann noch das für SQL komplett völlig falsche QuoteStr.
Warum nicht als Parameter? Denn mit diesem QuoteStr kann man keine SQL-Injection verhindern, da es die Pascal-String-Syntax benutzt, anstatt der Syntax für SQL-Strings.
Ich gebe zu der Code ist alt (Projekt begonnen 2008. Zuvor hatte ich nur wenig Erfahrung mit Delphi 6.

zu dem EXECSQL:
Heisst das, Open führt den Select auch schon aus? bzw. Active := true dann ebenfalls?

Dann noch das für SQL komplett völlig falsche QuoteStr.
Warum nicht als Parameter?
Ich nutze die Devart Uniconnector komponenten. Ich weiss ehrlich gesagt nicht, wie ich da Parameter einsetzen könnte.
Ich habe mir das SO selber beigebracht; heisst natürlich nicht, dass es so auch richtig ist.
Edit: Ok, hab per Google Beispiele gefunden wie das mit den UniDac Komponenten geht.
Scheint mir aber ein grosser Aufwand den ich hier betreiben muss um alle Abfragen derartig umzubauen

Eine SQL-Injection will ich nicht verhindern (Ok, falsch ausgedrückt. Ich denke nicht, das hier eine Injektion geschieht. Das macht keiner unserer Mitarbeiter. Ich schätze ich bin auch der einzige dem der Begriff etwas sagt).
Die Werte die hier in einem Query eingesetzt werden setze bzw. ermittle ich selber. Der Benutzer gibt hier keine Falschen Daten ein.

Und von aussen kann niemand an das Programm ran. Das ist eine Software die ausschliesslich bei uns in der Firma verwendet wird.

PS: Bisher hat das alles so funktioniert. Mit XE3.

Das QuotedStr habe ich dann irgendwann eingeführt als ich mit qry.SQL.Add(...) auf probleme trat wenn ich die Werte mittels fieldname="wert" eingesetzt hatte. durch das QuotedStr wurde dann in der SQL-Abfrage
feldname='Wert'; so konnte ich die Abfrage dann auch absetzen.

Sicherlich aufwengiger als Parameter zu nutzen; jetzt im nachhinein gesehen sehe ich das auch ein nachdem ich den Thread erstellt habe und Deine Hinweise gelesen habe.

Bei unserer "Dicken" App (200 forms) klappt es auch aktuell. Sicher noch Stellen anzupassen aber Sie läuft zumindest schonmal wieder.
Ich schätze ich hätte in der Vergangenheit öfter mal einen Thread hier erstellen sollen bei Problemen

Geändert von DonManfred (13. Okt 2020 um 14:18 Uhr)
  Mit Zitat antworten Zitat
 


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 03:01 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