Formatierter String für sql %f



  • test=Format("INSERT INTO einnahmen (brutto, netto, mwst, worte, Addy1) VALUES (%.2f,%.2f,%d,%s,%s)",OPENARRAY(TVarRec,((edt_brutto->Text.ToDouble()),(edt_summe->Text.ToDouble()), (edt_mwst->Text.ToInt()), (edt_worte->Text), (edt_addy1->Text))));

    Query1->SQL->Add(test);

    Allerdings hab ich kleine probleme mit den float werten..
    eine zahl 12.34 wird als 12,34 und sql erkennt das als 2 parameter an nicht als einen.. 😞

    was tun?



  • - mit Parametern arbeiten
    - Hilfsfunktionen definieren, die die doubles nach String konvertieren und , mit . ersetzen
    - ostringstream mit invarianter locale => imbue()
    Dann
    - sollten die Strings in Hochkommata eingeschlossen werden
    - die Hochkommata, die zufällig im String auftauchen, mit einem Auswertungsschutz versehen werden.



  • sry hab n dick dick dicken denkfehler drin gehabt


Anmelden zum Antworten