oracle中Number类型总结
2014-03-23 21:45
239 查看
1.number(p,s),
p:精度位,precision,是总有效数据位数,取值范围是1-38,默认是38,可以用字符*表示38。
s:小数位,scale,是小数点右边的位数,取值范围是-84~127,默认值取决于p,如果没有指定p,那么s是最大范围,如果指定了p,那么s=0。 2. number(p) 声明一个整数 number(p,s) 声明一个定点数 number 声明一个浮点数
3number(p)的时候,整数位不能超过p,如果输入小数位数据库会报错,整数位最多是(p-s)s这回默认为0 4.number(p,s) s>0且p>s 例: number(5,2), 整数位最多表示(p-s)位,小数位最多表示s位。如果整数位超出数据库报错,小数位超出则会自动四舍五入小数点后s位。 例:34.345超出小数位则数据库自动保存34.35如果是34.344则保存34.34,如果小数位数不够自动补0. 5.number(p,s) s>0且s=p时,例:number(5,5),这个时候的整数位只能为0,如果整数位大于0则会报错,后面小数位的处理和4一样。整数位还是(p-s),所以整数位只能为0 6.number(p,s) s>0且s>p时。。貌似这样怎么输都是错的。。也不知道也什么意义。。如果有知道的话,麻烦告知。 7.number(p,s)s<0 且(p>|s|,p=|s|,p<|s|都包括)时,例:number(5,-2),整数位最多 (p-s) 7位,当小数位<0时,会从小数点开始向左数|s|位 ,进行舍入,输入54123会变成54100,也可以表式9999900这样的7位数。number(5,-5)可以表式1111100000 number(5,-6) 可以表式11111000000. 总结: 当整数位超过p-s时,oracle会报错. 当s<=0时,如果输入小数位,oracle会报错。 当s>0时,如果输入的小数大于s的时候,oracle会自动舍入,当输入的小数位不够的时候自动补0.
s:小数位,scale,是小数点右边的位数,取值范围是-84~127,默认值取决于p,如果没有指定p,那么s是最大范围,如果指定了p,那么s=0。 2. number(p) 声明一个整数 number(p,s) 声明一个定点数 number 声明一个浮点数
3number(p)的时候,整数位不能超过p,如果输入小数位数据库会报错,整数位最多是(p-s)s这回默认为0 4.number(p,s) s>0且p>s 例: number(5,2), 整数位最多表示(p-s)位,小数位最多表示s位。如果整数位超出数据库报错,小数位超出则会自动四舍五入小数点后s位。 例:34.345超出小数位则数据库自动保存34.35如果是34.344则保存34.34,如果小数位数不够自动补0. 5.number(p,s) s>0且s=p时,例:number(5,5),这个时候的整数位只能为0,如果整数位大于0则会报错,后面小数位的处理和4一样。整数位还是(p-s),所以整数位只能为0 6.number(p,s) s>0且s>p时。。貌似这样怎么输都是错的。。也不知道也什么意义。。如果有知道的话,麻烦告知。 7.number(p,s)s<0 且(p>|s|,p=|s|,p<|s|都包括)时,例:number(5,-2),整数位最多 (p-s) 7位,当小数位<0时,会从小数点开始向左数|s|位 ,进行舍入,输入54123会变成54100,也可以表式9999900这样的7位数。number(5,-5)可以表式1111100000 number(5,-6) 可以表式11111000000. 总结: 当整数位超过p-s时,oracle会报错. 当s<=0时,如果输入小数位,oracle会报错。 当s>0时,如果输入的小数大于s的时候,oracle会自动舍入,当输入的小数位不够的时候自动补0.
相关文章推荐
- 【NUMBER】有关Oracle NUMBER类型定义中precision和scale的测试和总结
- 简单明了解析Oracle的number类型
- ORACLE数值类型的性能优化技巧number,Int,float
- Oracle修改字段类型方法总结
- Oracle修改字段类型方法总结
- oracle里long类型的总结
- Oracle中的number类型
- oracle字段类型由number转为格式化字符串
- oracle 中将number类型的数据转化成指定格式的小数
- Oracle修改字段类型方法总结
- Oracle与MySQL的数据类型转换总结
- 修改oracle某张表的ID类型varchar2为number,并保留原有数据(因为可能其他表与该表ID关联)
- oracle的number类型精度、刻度范围
- oracle如何判断number类型为空
- Oracle中Number decimal(numeric )、float 和 real 数据类型的区别
- oracle中number类型 默认长度是多少
- oracle中NUMBER类型和java中对应类型
- Oracle中NUMBER类型如果不指定长度和小数点精度默认是多长
- 详解Oracle修改字段类型方法总结
- Oracle数据类型NUMBER