Forum: PC-Programmierung SQL-String zum Speichern von double


von Klatec (Gast)


Lesenswert?

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);

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?

Statt des Dezimalkommas musst Du einen Dezimalpunkt verwenden, also 
nicht "0,25", sondern "0.25".

von (prx) A. K. (prx)


Lesenswert?

Klatec schrieb:
> string strSqlAbf = " UPDATE Entstör SET UrsacheFremd = " +

Egal ob zulässig oder nicht: Sich auf ASCII zu beschränken spart Ärger.

von Ergo70 (Gast)


Lesenswert?

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?

von Rufus Τ. F. (rufus) Benutzerseite


Lesenswert?


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
Noch kein Account? Hier anmelden.