Numeric 数据类型
功能
存储数值数据。
注意
-
NUMERIC 和 DECIMAL 数据类型,以及各种 INTEGER 数据类型,有时被称为精确数值数据类型,与之相对的是近似数值数据类型 FLOAT、DOUBLE 和 REAL。
精确数值数据类型是那些可以指定精度值和小数位数值的数据类型,而近似数值数据类型是以预定义方式存储的。只有精确数值数据能确保会在算术运算后精确到指定的最小有效位 。
-
在 5.5 版之前,长度超过四个字节的十六进制常量被视为字符串常量,其它十六进制常量则被视为整数。新的缺省行为是将它们视为二进制类型的常量。若要使用传统的行为,请将 TSQL_HEX_CONSTANTS 数据库选项设置为"OFF"。
-
不允许小于 1 的数据类型长度和精度。
兼容性
-
只有小数位数为 0 的 NUMERIC 数据类型可以用于 Transact-SQL identity 列。
-
应该避免 NUMERIC 和 DECIMAL 数据类型的缺省精度和小数位数设置,因为它们在 Adaptive Server Anywhere 和 Adaptive Server Enterprise 之间是不同的。在 Adaptive Server Anywhere 中,缺省精度为 30,缺省小数位数为 6。在 Adaptive Server Enterprise 中,缺省精度为 18,缺省小数位数为 0。
-
FLOAT ( p ) 数据类型是 REAL 或 DOUBLE 数据类型的同义词,具体取决于 p 的值。对于 Adaptive Server Enterprise,REAL 用于 p 小于或等于 15 的数值,DOUBLE 用于 p 大于 15 的数值。对于 Adaptive Server Anywhere,分界值与平台相关,但在所有平台上分界值都大于 15。
有关通过设置数据库选项更改缺省值的信息,请参见 PRECISION 选项 [database] 和 SCALE 选项 [database]。
BIGINT 数据类型 [Numeric]
DECIMAL 数据类型 [Numeric]
DOUBLE 数据类型 [Numeric]
FLOAT 数据类型 [Numeric]
INT 或 INTEGER 数据类型 [Numeric]
数值数据类型 [Numeric]
REAL 数据类型 [Numeric]
SMALLINT 数据类型 [Numeric]
TINYINT 数据类型 [Numeric]