2010-01-08 3 views
0

Est-ce que le type de données SQL Server decimal stockait le nombre réel de chiffres après le nombre décimal pour chaque valeur dans une colonne?Stocker et renvoyer des nombres décimaux avec une précision saisie par l'utilisateur dans SQL Server

Par exemple

UPDATE [Mixes] SET [Concentration] = 0.0012500 WHERE [Id] = 1 

Concentration Decimal(21,11) 

Est-il possible de récupérer la valeur exacte « 0,0012500 » comme entrée par l'utilisateur, ou est-il nécessaire de stocker le nombre de décimales entré dans une autre colonne?

Répondre

2

Le type décimal stocke la valeur numérique jusqu'à la précision spécifiée. Il ne stocke pas le formatage. C'est comme sauver un int avec des zéros en tête. Les zéros en tête ne modifient pas la valeur numérique. Si le format entré par l'utilisateur est nécessaire, vous devrez le stocker séparément ou stocker le numéro en tant que varchar.

1

Vous devez stocker le nombre de décimales séparément.

1

Vous ne seriez pas en mesure de faire la différence entre 0.0012500 et 0.00125 après avoir été entré en utilisant simplement une colonne décimale. Vous devez stocker dans un formulaire textuel ou analyser les informations sur la façon dont il a été entré et stocker cette information.

Questions connexes