MySQL Datenbanken Fehlermeldung

Im Prinzip gebe ich dir Recht, aber ein Query mit Parametern ist nu keine Raketenwissenschaft. Statt "+ textbox.Text" schreibt man in den String eben "@einparameter" und Added den Parameter im SQLCommand. Das sollte man sich so schnell aneignen wie möglich damit man gar nicht erst Gelegenheit hat, sich an verkettete Strings für SQL-Statements z u gewöhnen. Wozu erst den vermeintlich falschen Weg lernen, wenn man es gleich richtig machen kann? Unterm Strich ist das nur eine Zeile pro Parameter mehr, im Regelfall also genau eine Zeile.........
 
  • Gefällt mir
Reaktionen: oiisamiio, RalphS, Dalek und eine weitere Person
Hayda Ministral schrieb:
Glaubt ihr wirklich, es sei hilfreich in der Situation und in dieser Phase schon mit irgendwelchen Securityfragen und hochwohlgeborenen Diskussionen zu Designentscheidungen zu kommen?
Ehm ja?! Prepared Statements von Anfang an zu nutzen? Wo genau ist da der Mehraufwand? Haette zudem den Fehler hier verhindert, also verstehe ich deinen Einwand genau null, sorry.
 
  • Gefällt mir
Reaktionen: GroMag und Madman1209
Hayda Ministral schrieb:
Glaubt ihr wirklich, es sei hilfreich in der Situation und in dieser Phase schon mit irgendwelchen Securityfragen und hochwohlgeborenen Diskussionen zu Designentscheidungen zu kommen?
Ja was bringt es ihm wenn er später wegen der falschen Angewohnheit eine Datenbank schrottet oder sehr anfällig macht und nicht weiss wo man am besten ansetzen kann. Sofern der Datenbankserver genügend Power hat sind soger Callable Statments anzuraten.
 
Alles klar, dann werde ich das noch ändern. Danke für den Tipp.
Mich würde mal interessieren was die Meisten hier im Forum beruflich machen?
 
  • Gefällt mir
Reaktionen: Raijin
Im übrigen war das auch nur ein Hinweis bzw. ein Ratschlag. Was @mrmorning daraus macht, ist seine Sache. Wenn man aber nichts davon weiß und niemand einen darauf aufmerksam macht, kann man es auch nicht lernen.

Mit SQL-Injection ist nicht zu spaßen und es ist ein gängiger Angriffsvektor auf datenbankbasierte Anwendungen oder Webseiten. Das geht bis hin zum Erlangen von Adminrechten und ggfs eben auch dem Auslesen von Kundendaten oder dergleichen. Harmlos ist etwas anderes.

Für die heimische, selbst programmierte Videodatenbank mag das egal sein, aber der Mehraufwand ist derart gering - eine Zeile je Parameter mehr: cmd.Parameters.AddWithValue("@param", "value") - dass das eigentlich ein no-brainer ist. Hinzu kommt, dass die Parameter typisiert sind, also automatisch Strings mit Hochkomma im fertigen SQL-Statement erscheinen. Eine potentielle Fehlerquelle weniger.
 
Gute Frage, das kriegen wir sicher in dem thread repräsentativ zusammengetragen. Ich bin Holzwurmhändler
 
Zurück
Oben