钱的地图好漂浮吗?

时间:2009-12-18 19:33:43

标签: c# sql-server types

将sql数据类型的钱映射到c#float?

5 个答案:

答案 0 :(得分:12)

否......它映射到decimal。如果列允许null,则映射到Nullable<Decimal>

Mapping CLR Parameter Data

float不够精确,无法用于货币计算。你会在整个地方失去/赚钱。

答案 1 :(得分:2)

我使用小数。

  

十进制值类型表示   十进制数从正数   79,228,162,514,264,337,593,543,950,335   否定的   79,228,162,514,264,337,593,543,950,335。   十进制值类型是合适的   用于需要的财务计算   大量的重要积分   和小数位,没有四舍五入   错误。 Decimal类型没有   消除了舍入的需要。   相反,它最大限度地减少了由于的错误   四舍五入。

答案 2 :(得分:2)

只有你想赔钱。

答案 3 :(得分:0)

没有

资金映射到Decimal。如果MONEY列允许空值,则会映射到Nullable<Decimal>.有关详细信息,请参阅SQL-CLR Type Mapping

Float对于处理货币的数值计算来说不够精确。您应该始终使用小数值进行所有计算。

答案 4 :(得分:0)

不,float的精确度太低,无法处理货币价值。七位数字不会让你走得太远。此外,浮点类型由于数字的表示方式而容易出现舍入误差。

使用Decimal数据类型。