Delphi-PRAXiS
Seite 2 von 2     12   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi Zweite Zeile SQLite ansprechen (https://www.delphipraxis.net/181031-zweite-zeile-sqlite-ansprechen.html)

BenneX 9. Jul 2014 23:24

AW: Zweite Zeile SQLite ansprechen
 
Hallo,

danke für die Antworten. Ich arbeite mich im Moment Schritt für Schritt in die Materie ein.
Jeder Anfang ist schwer :)

War ist das Problem mit Mavarik Lösung? Wieso sollte man diese nur im aller letzten Fall benutzen?

Grüße, BenneX.

himitsu 9. Jul 2014 23:45

AW: Zweite Zeile SQLite ansprechen
 
Zitat:

Zitat von BenneX (Beitrag 1265024)
Was ist das Problem mit Mavarik Lösung? Wieso sollte man diese nur im aller letzten Fall benutzen?

SQL-Injection

Man kann über den String "a" alles mögliche in das SQL einschleusen.
Delphi-Quellcode:
a := '*", "BenneX"); DROP DATABBASE xxx; SELECT COALESCE("';

Also müsstest du den Inhalt dieser Variable prüfen und sicherstellen, daß nichts Böses drin sein könnte,
während man keine Probleme hätte, wenn es als Parameter übergeben wird.

mkinzler 10. Jul 2014 06:36

AW: Zweite Zeile SQLite ansprechen
 
Das ist aber nur einer der Vorteile, weitere wären (allgemein; kommt auf DBMS und Bibliothek/Wrapper an):
-automatische Anpassung von Formaten (Datum, Zeit, ...)
-automatische Typkonvertierungen bzw. Konvertierung nach String unnötig ( welche ja auch das Formatproblem birgt)
-Beschleunigung bei mehrfacher Ausführung durch Vorbereitung (Prepare): Die Abfrage wird ohne Werte vorbereitet ( Plan usw.) vor der Ausführung werden nur noch die Parameterwerte übertragen und die vorbereitete Abfrage mit dieser Wertekombination ausgeführt.
...

BenneX 10. Jul 2014 23:24

AW: Zweite Zeile SQLite ansprechen
 
Zitat:

Zitat von himitsu (Beitrag 1265025)
Zitat:

Zitat von BenneX (Beitrag 1265024)
Was ist das Problem mit Mavarik Lösung? Wieso sollte man diese nur im aller letzten Fall benutzen?

SQL-Injection

Man kann über den String "a" alles mögliche in das SQL einschleusen.
Delphi-Quellcode:
a := '*", "BenneX"); DROP DATABBASE xxx; SELECT COALESCE("';

Also müsstest du den Inhalt dieser Variable prüfen und sicherstellen, daß nichts Böses drin sein könnte,
während man keine Probleme hätte, wenn es als Parameter übergeben wird.

Okay, das leuchtet mir ein. Werde versuchen mit Parameter zu arbeiten. (Sofern ich es hinbekomme)

Grüße!


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:12 Uhr.
Seite 2 von 2     12   

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