Hi Enno,
also es kann ja sein, dass ich das wirkliche Problem noch nicht erkannt
habe, auch von der Real-DB hab ich keine spezifische Ahnung, aber rein
SQL-technisch würd ich jetzt mal sagen, dass strings (z.B. VARCHARs) mit '
gequoted werden wogegen Zahlenwerte üblicherweise ungequotet übergeben
werden. In der db.sqlexecute Zeile erzeugst du ja ein SQL Kommando als
String. mit einer Angabe wie ... VALUES ('"+editfield1.text+"') ... sieht
der erzeugte String also wie folgt aus: ... VALUES ('Mein Text aus dem
Editfield') ... was du hier brauchst wäre eine Zahl, also ohne Quotes: ...
VALUES ("+val(editfield1.text)+") ... das würde dann zu dem String ...VALUES
(123,456) ... führen. Da es sich um einen Floatingpoint Wert handelt musst
du diesen ggf noch über Format() o.Ä. mit Punkt als Dezimaltrenner
schreiben. Das hängt jedoch vom verwendeten DBMS ab und davon was dieses
(ggf. unter einbeziehung der jeweiligen locale Einstellung) als
Eingabesyntax für Fließkommazahlen akzeptiert.
Ein Tipp noch am Rande: versuche dir doch das zusammengestellte SQL-Kommando
als MsgBox auszugeben, dann siehst du was genau an das DB-Backend gesendet
wird. Und noch ein Tipp: wenn du Benutzereingaben direkt in einen SQL-String
einbettest, solltest du dir Gedanken über richtiges escapen von
Sonderzeichen machen, sonst bist du sehr anfällig für SQL injection Attaken.
hth
Tobias
Enno Bussmann <[EMAIL PROTECTED]> wrote:
> Nein, eben leider nicht, da das programm den double-wert erst über
> val() errechnet und ich nicht sagen kann .... values (6.5)
>
>
> Am 14.01.2006 um 13:45 schrieb Rudi Maier:
>
>> db.sqlexecute "insert into tabelle (doublefeld) values ( Ergebnis )"
>>
>> ich habe die RB-Datenbank noch nie benutzt, aber in Ergebnis steht
>> doch der Wert als double.
>>
>> Rudi
> enno