精度和尺度有什么区别?
Oracle中的精度和范围有什么区别? 在教程中,他们通常会将空值放在空白处,并在创build主键时将精度设置为6。
精度和尺度代表什么?
精度4,比例2:99.99
精度10,刻度0:9999999999
精度8,标度3:99999.999
精度5,比例-3:99999000
精度是有效位数。 Oracle保证数字的可移植性,精度范围从1到38。
比例是小数点右边(正)或左边(负)的位数。 规模可以从-84到127。
在你的情况下,具有精度6的ID意味着它将不接受具有7个或更多有效数字的数字。
参考:
http://download.oracle.com/docs/cd/B28359_01/server.111/b28318/datatype.htm#CNCPT1832
那个页面也有一些例子会让你理解精确度和规模。
精度是总位数。 比例是小数点后的位数。
例:
NUMBER(7,5):12.12345
NUMBER(5,0):12345
也许更清楚:
请注意,精度是包括在内的总位数
NUMBER(精度,小数)
精度5,比例尺3:54.321
精度5,比例1:5432.1
精度5,刻度0:54321
精度5,刻度-1:54320
精度5,比例-3:54000
如果数值是9999.988和精度4,比例2则表示9999(表示精度).99(比例是2,所以.988被舍入为0.99)
如果值是9999.9887,精度是4,那么比例是2,那么这意味着9999.99