精确数值数据类型
①NUMERIC[精度,标度]:用于存储零、正负定点数。其中:精度是一个无符号整数,定义了总的数字数,精度范围是 1 至 38。标度定义了小数点右边的数字位数。一个数的标度不应大于其精度,如果实际标度大于指定标度,那么超出标度的位数将会四舍五入省去。
例如:NUMERIC(4,1) 定义了小数点前面 3 位和小数点后面 1 位,共 4 位的数字,范围在 -999.9 到 999.9。所有 NUMERIC 数据类型,如果其值超过精度,会返回一个出错信息,如果超过标度,则多余的位会被截断。
②NUMBER类型:跟NUMERIC相同
③DECIMAL/DEC类型:跟NUMERIC相似
注意事项:当修改字段的时候尤其NUMERIC类型的时候,缩小精度的时候,数据会实际变化,系统不会提示,哪怕再扩大精度的时候,数据也不会变回原来一样,此过程是不可逆的。所以在日常工作中遇到需要修改数据类型的时候尤其需要注意。
以下为测试过程:


本文详细介绍了数据库中的数值类型NUMERIC、NUMBER和DECIMAL,包括它们的精度和标度概念,以及在修改字段时需要注意的数据变化问题。NUMERIC类型在缩小精度时会导致数据实际变化,且此过程不可逆,提醒开发者在操作时务必谨慎。

3264

被折叠的 条评论
为什么被折叠?



