Hallo Zusammen
Ich habe ein Problem mit dem Beschreiben einer Access Datenbank mit SQL
in C#. Ich habe die Zelle als Zahl (double) konfiguriert und möchte z.B.
0,25 eintragen.
Der nachfolgende Teil (darunter der gesamte) des SQL-String soll die
0,25 der Datenbank übergeben, aber mit einem Komma kommt es zu einen
Syntaxfehler, wenn man z.B. eine 1 schreibt wird dieser Wert in die
Datenbank geschrieben.
UrFremdZeitAufwand = " + txtStundenFremd.Text + ",
Wie soll der Syntax richtig heißen. Bitte um Hilfe.
string strSqlAbf = " UPDATE Entstör SET UrsacheFremd = " +
ckbFremd.Checked + ", Datum = '" + txtDate.Text + "', Störungsart = '" +
cobStörArt.Text + "', Tätigkeit = '" + rtbTätig.Text + "', MaFremd = '"
+
txtMaFremd.Text + "', UrFremdZeitAufwand = '" +
txtStundenFremd.Text + "', FremdVerurs = '" + cobVerurs.Text + "', SamNr
= '"
+ txtSamNr.Text + "', MA1 = '" + cobMa1.Text + "', MA2
= '" + cobMa2.Text + "' Where Entstör_SetNr = " +
stuEntStörData.Entstör_SetNr;
Danke.
Lg.
Hans K.
dbReader.ExecuteNonQuerry(strSqlAbf);
Statt des Dezimalkommas musst Du einen Dezimalpunkt verwenden, also nicht "0,25", sondern "0.25".
Klatec schrieb: > string strSqlAbf = " UPDATE Entstör SET UrsacheFremd = " + Egal ob zulässig oder nicht: Sich auf ASCII zu beschränken spart Ärger.
Das ist ein recipe for Desaster: Entstör_SetNr=„234;DROP TABLE Entstör;“ https://de.m.wikipedia.org/wiki/SQL-Injection Kann das Dings keine Bind-Variablen?
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.