回答

收藏

在SQL Server中保存浮点值

技术问答 技术问答 113 人阅读 | 0 人回复 | 2023-09-13

我有一个简单的Web应用程序,想要在SQL Server中保存一些Float或Double格式。4 r' g4 ?2 U+ I1 c* D: g
但是有一个问题,当我尝试保存123.66时,在表中我看到存储了123.6600003662109。
3 ]" I9 f2 r9 r+ m5 j" l+ @( L保存到数据库时,为什么我的浮点数发生了变化?我该如何解决该错误?  U, g# Z2 Y( M0 |+ g5 `* A! }0 D
谢谢9 t  y" K) k- X
                ! S: D2 A8 |6 T# t
解决方案:* S9 t0 _5 t$ w) g2 n, e
               
( D1 X% }/ V4 ]1 [* O( r5 E, `; U
8 u( k. B' p+ X0 T" d
                您 实际上 并没有尝试保存123.66,因为您不能完全以浮点数或双精度数表示123.66。仅此,数据库比以往更加准确地保存数据。7 I! H* w9 O& h1 A9 _, Z
如果要准确保存 小数 ,请使用该decimal类型。
) t- [' v- g0 o, B有关更多信息,请参见我有关浮动二进制点和浮动小数点类型的文章。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则