需求上是这样定义的 
字段名    类型       长度
aaa      integer   4
bbb      DECIMAL   31我用的是sql developer 数据库工具,工具里面只有  integer 和 number 如果选择数据类型为integer 却不能选size(我认为size就是 数据长度) 而且没有DECIMAL选项
所以我全选的是numberaaa     number(4,0)
bbb     number(31,0)
这样可以么. 大家给我讲讲 oracle的数据类型阿 谢谢

解决方案 »

  1.   

    在baidu上找的:
    在Oracle中Number类型可以用来存储0,正负定点或者浮点数,可表示的数据范围在
    1.0 * 10(-130) —— 9.9...9 * 10(125) {38个9后边带88个0}
    的数字,当Oracle中的数学表达式的值>=1.0*10(126)时,Oracle就会报错。
    Number的数据声明如下:
    表示 作用 说明
    Number(p, s) 声明一个定点数 p(precision)为精度,s(scale)表示小数点右边的数字个数,精度最大值为38,scale的取值范围为-84到127
    Number(p) 声明一个整数 相当于Number(p, 0)
    Number 声明一个浮点数 其精度为38,要注意的是scale的值没有应用,也就是说scale的指不能简单的理解为0,或者其他的数。定点数的精度(p)和刻度(s)遵循以下规则:
     当一个数的整数部分的长度 > p-s 时,Oracle就会报错
     当一个数的小数部分的长度 > s 时,Oracle就会舍入。
     当s(scale)为负数时,Oracle就对小数点左边的s个数字进行舍入。
     当s > p 时, p表示小数点后第s位向左最多可以有多少位数字,如果大于p则Oracle报错,小数点后s位向右的数字被舍入
      

  2.   


    aaa    number(4,0) 
    bbb    number(31,0) 
    可以这样定义