新博客http://www.cnblogs.com/zhjh256 欢迎访问
分类: Oracle
2008-04-18 15:02:10
number:位数(scale),精度(precision)只能用来限定存储范围,不能决定存储的实际空间字节大小。
对于number类型,负号(-)占用1个字节,正号(+)不占字节,小数点占用1个字节,小数点左右两边的数字每2个数字占用1个字节,小数点右边最后的0不占字节,如果小数部分为0,则小数点左边的最后数量为2的倍数的0不占用字节。对于任何number型,都占用一个小数点(即一个字节)。如下:
占用字节统计 |
Number(10,2) |
Number(10,0) (int,integer) |
BINARY_DOUBLE |
BINARY_FLOAT (会出现精度不准的情况) |
FLOAT(n) N=1,2,8 |
Number(float) |
1234 |
3 |
3 |
8 |
4 |
2,3 |
3 |
12340 |
4 |
4 |
8 |
4 |
2,3 |
4 |
123400 |
3 |
3 |
8 |
4 |
2,3 |
3 |
1000000 |
2 |
2 |
8 |
4 |
2,2 |
2 |
1.234 |
3 |
2 |
8 |
4 |
2,3 |
4 |
1.23400 |
3 |
2 |
8 |
4 |
2,3 |
4 |
123400.0012 |
3 |
3 |
8 |
4 |
2,3 |
6 |
-1234 |
4 |
4 |
8 |
4 |
2,4 |
4 |
DATE类型存储为7个字节,TIMESTAMP存储为11个字节。