oracle数据库中NUMBER(2)这个2是什么意思

oracle数据库中NUMBER(2)这个2是什么意思,还有 VARCHAR(50)这个50又是什么意思

我们知道number(p,s)中p表示的是整数的位数,s表示的是小数点后的位数,如果没有特别指出,比如number,系统会默认p=5,s=0,(开始打错了)同理number(2)表示只存在整数位2位,比如DEPTNO(员工所在部门编号)数据类型就是number(2)

VARCHAR是一种比CHAR更加灵活的数据类型,同样用于表示字符数据,但是VARCHAR可以保存可变长度的字符串。其中M代表该数据类型所允许保存的字符串的最大长度,只要长度小于该最大值的字符串都可以被保存在该数据类型中。因此,对于那些难以估计确切长度的数据对象来说,使用VARCHAR数据类型更加明智。VARCHAR数据类型所支持的最大长度也是255个字符;故VARCHAR(50)表示50字符
温馨提示:内容为网友见解,仅供参考
第1个回答  2020-03-09
number(p,s)
p:1~38
s:-84~127
p>0,对s分2种情况分析:
1.
s>0
精确到小数点右边s位,并四舍五入。然后检验有效数位是否<=p;如果s>p,小数点右边至少有s-p个0填充。
2.
s<0
精确到小数点左边s位,并四舍五入。然后检验有效数位是否<=p+|s|
(有效数位:从左边第一个不为0的数算起)
============================
Datatype
Stored
Value
123.2564
NUMBER
123.2564
1234.9876
NUMBER(6,2)
1234.99
12345.12345
NUMBER(6,2)
Error
1234.9876
NUMBER(6)
1235
12345.345
NUMBER(5,-2)
12300
1234567
NUMBER(5,-2)
1234600
12345678
NUMBER(5,-2)
Error
123456789
NUMBER(5,-4)
123460000
1234567890
NUMBER(5,-4)
Error
12345.58
NUMBER(*,
1)
12345.6
0.1
NUMBER(4,5)
Error
0.01234567
NUMBER(4,5)
0.01235
0.09999
NUMBER(4,5)
0.09999
0.099996
NUMBER(4,5)
Error
====================
VARCHAR(50)
50是字符的长度为50个字节
第2个回答  2008-04-15
number(p,s)
p:1~38
s:-84~127

p>0,对s分2种情况分析:

1. s>0
精确到小数点右边s位,并四舍五入。然后检验有效数位是否<=p;如果s>p,小数点右边至少有s-p个0填充。

2. s<0
精确到小数点左边s位,并四舍五入。然后检验有效数位是否<=p+|s|

(有效数位:从左边第一个不为0的数算起)

============================
Datatype

Stored Value

123.2564

NUMBER

123.2564

1234.9876

NUMBER(6,2)

1234.99

12345.12345

NUMBER(6,2)

Error

1234.9876

NUMBER(6)

1235

12345.345

NUMBER(5,-2)

12300

1234567

NUMBER(5,-2)

1234600

12345678

NUMBER(5,-2)

Error

123456789

NUMBER(5,-4)

123460000

1234567890

NUMBER(5,-4)

Error

12345.58

NUMBER(*, 1)

12345.6

0.1

NUMBER(4,5)

Error

0.01234567

NUMBER(4,5)

0.01235

0.09999

NUMBER(4,5)

0.09999

0.099996

NUMBER(4,5)

Error
====================

VARCHAR(50) 50是字符的长度为50个字节本回答被网友采纳

oracle数据库中NUMBER(2)这个2是什么意思
我们知道number(p,s)中p表示的是整数的位数,s表示的是小数点后的位数,如果没有特别指出,比如number,系统会默认p=5,s=0,(开始打错了)同理number(2)表示只存在整数位2位,比如DEPTNO(员工所在部门编号)数据类型就是number(2)VARCHAR是一种比CHAR更加灵活的数据类型,同样用于表示字符数据,但...

oracle数据库中number是什么类型
Oracle数据库中Number是数字类型。以下是关于Oracle数据库中Number类型的 1. Number类型概述 Oracle数据库的Number类型是一个用于存储数字值的数据类型,它可以存储精确数值,包括整数和浮点数。由于其灵活性,Number类型能够处理各种大小的数字,从小数点到非常大的数值范围。2. Number类型的特点 精确性:Numb...

oracle中的number是什么意思
是数字,包括所有C语言的所有数值的表示:number(10) :10位长的整数 number(10,2):10位长的数值,其中8位整数,2位小数.number(32,6):32位数值,其中包含6位小数.

oracle数据库中Number是
在Oracle数据库中,Number数据类型起到了关键的角色,它类似于Java中的int和double。Number类型具有灵活性,可根据需要指定精度(p)和小数位数(s)。例如:number(6,2) 表示最多存储6位,保留两位小数,如1234.57会被存储为1234.57。 number(2,4) 则保留两位小数,但总长度为4,如0.0012会被存...

oracle中number和number(9,2),有什么区别
楼上正确,9表示数据长度,2表示保留小数位 例:1234567.89 应该能看的懂吧

oracle数据库中Number是什么类型?
相当于java的int double类型\\x0d\\x0aoracle包括三种数据类型:\\x0d\\x0a1)数值:number或number(p,s)\\x0d\\x0ap:精度,s:刻度(小数位数)\\x0d\\x0a1234.567 number(6,2) ---> 1234.57\\x0d\\x0a0.001234 number(2,4) ---> 0.0012\\x0d\\x0a1234 number(3,-1)---> 1230...

oracle中number类型是什么类型
在Oracle数据库中,Number类型是一个用于存储数值数据的数据类型。它是一个精确的数值类型,可以存储整数和浮点数,并且允许使用小数点来表示数值。与其他数据库管理系统中的数值类型相比,Oracle的Number类型提供了广泛的范围和精度选项。这意味着您可以存储小到非常大的数值,并且保持其准确性。此外,Number...

为什么ORACLE 中定义number(2) ,在dba_tab_columns中变成data_length 22...
ORACLE内部存储格式, 对于字符型 data_length的值和表中定义的值相同, 日期型长度都是7. number类型数据如果则需要看 data_precision data_scale这两个字段,一个表示精度,一个表示小数点后的位数。data_precision 这个字段才和定义的NUMBER字段长度保持一出风头 ...

oracle字段类型NUMBER(38,3),括号中两个数字分别表示什么?
p>0,对s分2种情况:1. s>0 精确到小数点右边s位,并四舍五入。然后检验有效数位是否<=p;如果s>p,小数点右边至少有s-p个0填充。2. s<0 精确到小数点左边s位,并四舍五入。然后检验有效数位是否<=p+|s| 123.2564 NUMBER 123.2564 1234.9876 NUMBER(6,2) 1234.99 12345.12345 ...

oracle数据库中的number数据类型疑问
不加默认值当然不会自动为0了。读取的时候值为NULL 定义时注明小数位例如 number(18,4) 4即为小数位。想要默认值是0可以在定义字段时候在后面加上default 0 例 create table test(id number(10,2)default 0,name varchar2(20));再执行insert into test(name) values('a');后 查询 ...

相似回答