处理小数项目数量

时间:2009-09-14 05:11:36

标签: sql-server-2005 decimal

我目前正致力于开发一个程序,将数量存储为十进制,四位数的部分用于部分销售的极少数产品(例如100ml液体以1mg-3.5mg的可变量出售)。登记/> 我不喜欢这种设计,因为它会导致整个程序在决定如何显示数量方面出现问题,而现在存在一些产品错误地具有十进制值的问题。
你能想到一个更好的方法吗?
我正在寻找数据库中四位小数字段的替代方法。

该项目使用SQL Server 2005。

编辑。为了获得更大的潜在受众,我使这个问题更加通用

2 个答案:

答案 0 :(得分:2)

将数量存储在销售的最小数量中。因此,如果mg销售了某些东西,请将其存储起来。这样你就不必存储分数,并处理舍入。

只需为产品创建一个查找表,以便存储其存储和显示方式的值,以及有关该大小的任何其他元数据。

答案 1 :(得分:1)

在.NET中,System.Decimal将是System.Single的最佳选择,System.Double不擅长表示具有准确表示精度的浮点数。

您能提供一个展示您问题的小型完整示例吗?