Avatar billede lotze Nybegynder
10. august 2005 - 10:58 Der er 6 kommentarer og
1 løsning

Update med double værdi

Jeg har prøvet forgæves at lave en update på en double værdi i en af mine tabeller.

double newprophetfactor = oldprophetfactor * pctgevinst;

string sql="UPDATE usertable SET prophetfactor="+newprophetfactor+" WHERE username='"+Session["loginname"].ToString()+"';";

Desuden har jeg prøvet med '"+newprophetfactor+"' og kun '+newprophetfactor+'.
Værdien vil ikke overføres til databasen. I det ene tilfælde indfører den fejlagtigt et nul.

Hvad går galt?
Avatar billede arne_v Ekspert
10. august 2005 - 11:04 #1
Det ligner C#

.NET har en irriterend evane med at bruge din PC's opsætning til formatering
så 12.34 kan blive skrevet som 12,34 hvis din PC er sat til dansk

prøv og formater eksplicit til engelsk format
Avatar billede arne_v Ekspert
10. august 2005 - 11:05 #2
newprophetfactor.ToString(new CultureInfo("en-US", false))
Avatar billede lotze Nybegynder
10. august 2005 - 11:15 #3
Aha, har haft lignende problemer før, tænkte bare ikke lige over det i denne situation. Smid et svar og du skal få point.
Nu er problemet løst ved at skifte til culture="en-US"
Avatar billede arne_v Ekspert
10. august 2005 - 11:17 #4
svar
Avatar billede lotze Nybegynder
10. august 2005 - 11:32 #5
Ved du så hvordan man f.eks udskriver en værdi kun med 5 decimaler efter kommaet

this.Profetfaktor.Text = ShowUser.prophetfactor.ToString();

ovenstående skal udskrives med højest fem decimaler efter kommaet
Avatar billede arne_v Ekspert
10. august 2005 - 11:43 #6
prøv at kør:

using System;
using System.Globalization;

namespace E
{
    class MainClass
    {
        public static void Main(string[] args)
        {
            double x = 12.34;
            Console.WriteLine(x);
            Console.WriteLine(x.ToString(new CultureInfo("en-US", false)));
            Console.WriteLine(String.Format("{0:f5}", x));
            Console.WriteLine(String.Format(new CultureInfo("en-US", false), "{0:f5}", x));
            Console.WriteLine(String.Format("{0,11:f5}", x));
            Console.WriteLine(String.Format(new CultureInfo("en-US", false), "{0,11:f5}", x));
        }
    }
}
Avatar billede lotze Nybegynder
10. august 2005 - 11:53 #7
okay tak
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Computerworld tilbyder specialiserede kurser i database-management

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester