Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Verwendung von c# datetime in MySQL-Update-Abfrage

Grundsätzlich sollten Sie vermeiden, Werte direkt in Ihre Abfrage aufzunehmen.

Zweifellos könnten Sie Setzen Sie Anführungszeichen um den Wert ... aber Sie sollten nicht. Stattdessen sollten Sie parametrisiertes SQL verwenden und den Wert in den Parameter einfügen. Auf diese Weise vermeiden Sie eine fehleranfällige Zeichenfolgenkonvertierung, vermeiden SQL-Injection-Angriffe (für Zeichenfolgenparameter) und trennen Code von Daten.

(Als Beispiel dafür, wie subtil dies sein kann, verwendet Ihr aktueller Code die Datums- und Zeittrennzeichen der "aktuellen Kultur", die möglicherweise nicht / sind und : . Sie können dies beheben, indem Sie CultureInfo.InvariantCulture angeben ... aber am besten gar nicht konvertieren.)

Suchen Sie nach der Dokumentation eines Parameters -Eigenschaft auf einen beliebigen Command Typ, den Sie verwenden (z. B. MySqlCommand.Parameters ), die Ihnen hoffentlich Beispiele geben wird. Möglicherweise gibt es sogar einen Tutorial-Abschnitt in der Dokumentation für parametrisiertes SQL. Beispiel:diese Seite kann sei das, wonach du suchst.