MSDN 说实数的范围是 - 3.40E + 38 到 -1.18E - 38, 0 和 1.18E - 38 到 3.40E + 38。显然真正的下限要低得多。以下脚本使用 1.401298E-45 填充 REAL 列:
CREATE TABLE a
(
r1 REAL NULL ,
r2 REAL NULL ,
r3 REAL NULL
) ;
GO
INSERT INTO a
( r1, r2 )
VALUES ( 1.18E-37, 10 ) ;
GO
DECLARE @i INT ;
SET @i = 1 ;
WHILE @i < 20
BEGIN ;
UPDATE a
SET r1 = r1 / r2 ; …Run Code Online (Sandbox Code Playgroud) sql-server-2008 sql-server sql-server-2008-r2 data-integrity