Hej JJ,
Du får mange tak for hjælpen
Problemet er løst ved at lave replace i Sql'en:
strVaegt1 = Request("vaegt1")
strSQL="UPDATE table SET vaegt1=" & Replace(strVaegt1, ",", ".") &" WHERE id = "&
Conn.Execute( strSQL )
Med venlig hilsen
Lars Aagaard
Lystfisker Forum - Danmarks mest aktive forum for lystfiskere
http://www.123nu.dk/
Fangster.dk - Din personlige fangstjournal på nettet.
http://www.fangster.dk/
"///JJ" <nospam@tdcadsl.dk> skrev i en meddelelse news:40be7b7f$0$185$edfadb0f@dtext01.news.tele.dk...
> Lars Aagaard wrote:
> > Min strSQL ekstrem lang... men det vigtige følger herunder:
> >
> > strVaegt1 = Request("vaegt1")
> > strSQL="UPDATE table SET vaegt1='"& CDbl(strVaegt1)&"' WHERE id = "&
> > Request("id")
> > Conn.Execute( strSQL )
>
> Spændende!
> Her kommer en række løsningsforsøg. I det følgende antages at du koder i ASP
> Du bliver nok nødt til at:
> A) Sikre din værdi i strVaegt1 virkelig er 7,75 - altså lav en
> response.write strVaegt1 efter fulgt af en response.end
> B) Sikre at din update ikke ved en fejl bliver kørt med samme ID to gange,
> hvor sidste gang er med værdien 7 i vaegt1
> C) Evt. afprøve at fjerne apostrofferne som først foreslået.
> D) Prøve at fjerne type-castningen med cdbl()
> E) Fortælle os hvilken datatype vaegt1 i din tabel er
> F) Er strSQL korrekt, men efter udførsel er data i DB forkerte?
>
> > Jeg har prøvet nedenstående men her bliver 7,75 til 775...
> > strVaegt1 = Cdbl(Replace(strVaegt1, ",", "."))
>
> Ja, det gør jeg også i VB6. Værdien skal være med komma som
> decimal-adskiller hvis det er en streng. Men defineret som en double skal
> det være med punktum. Jeg har prøvet en del kombinationer, men kan ikke få
> den til at afrunde til 7! Mit bud er pt. B) ovenfor....?
>
> Dim x As Variant
> Dim y As Double
> Dim z As String
>
> x = "7,75"
> y = 7.75
> z = "7,75"
> Debug.Print CDbl(x) ' 7,75
> Debug.Print CDbl(y) ' 7,75
> Debug.Print CDbl(z) ' 7,75
>
>
> --
>
>
> Mvh
> ///JJ
>
>