webForumDet fria alternativet

flyttal i sql-sträng

5 svar · 320 visningar · startad av Gein

GeinMedlem sedan sep. 20005 700 inlägg
#1

Har ett problem som jag behöver lösa.
Jag har några flyttal av typen Double som t.ex
kan ha värdet 9,5. När jag lägger in detta i en
INSERT fråga i en SQL sträng så blir det fel.
Access läser det som 9 är ett värde och 5 ett annat eftersom den delar upp värdena med ",". Hur ändrar jag detta så att
Visual Basic skriver ut "." istället?

GeinMedlem sedan sep. 20005 700 inlägg
#2

löste det med att sätta ' mellan värdet när det skulle in i SQL strängen

@ndersMedlem sedan juni 200032 969 inlägg
#3

Du får väl använda replace eftersom du skall använda decimalpunkt i SQL.

Mvh,

GeinMedlem sedan sep. 20005 700 inlägg
#4

replace funkar inte
Då VB inte gillar "."-tecken i en double datatyp så tar den bort det tecknet, så 9,5 efter en replace blir 95

UlfTMedlem sedan maj 20018 027 inlägg
#5

Ursprungligen av Gein replace funkar inte
Då VB inte gillar "."-tecken i en double datatyp så tar den bort det tecknet, så 9,5 efter en replace blir 95

Nej, du kan inte köra Replace på en double. Däremot kan du köra replace på en sträng. Alltså bygger du upp din sql-sträng först, sedan replace.

@ndersMedlem sedan juni 200032 969 inlägg
#6

Så här tänkte jag:
Du har ett decimaltal i en variabel, ex. dblNumber.

strSQL = "INSERT INTO tblTabell (doublefältet) VALUES ("  & Replace(Cstr(dblNumber), ",", ".") & ")"

Mvh,

133 ms totalt · 3 externa anrop · v20260731065814-full.35aaef89
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)