MSSQL中float字段中的NaN值

时间:2009-03-10 07:48:26

标签: java sql-server nan

我正在研究一个java应用程序,使用double类型来保存unitprice,qty等的值。我发现在MSSQL中显示的这些值中的一些是NAN和throws 当我尝试重用它时出现无限错误。这太不合理了,我可以保存它但不能再使用它了!我认为MSSQL中的NAN值必须在它首次出现在java时有效,所以我可以保存。如何和何时这个问题发生了吗?

2 个答案:

答案 0 :(得分:3)

你应该从不使用double或float来存储价格。请改用Decimal。 Double和float数据类型不是很精确。

FLOAT和REAL数据类型都是用于浮点数字数据的近似数字数据类型。浮点数据是近似值;并非数据类型范围中的所有值都可以精确表示。

答案 1 :(得分:1)

NaN值通常是除以零的结果 - 这将是我要检查的第一件事。