1>.NUMBER类型细讲:
Oracle number datatype 语法:NUMBER[(precision [, scale])]
简称:precision --> p
scale --> s
NUMBER(p, s)
范围: 1 <= p <=38, -84 <= s <= 127
保存数据范围:-1.0e-130 <= number value < 1.0e+126
保存在机器内部的范围: 1 ~ 22 bytes
有效为:从左边第一个不为0的数算起的位数。
s的情况:
s > 0
精确到小数点右边s位,并四舍五入。然后检验有效位是否 <= p。
s < 0
精确到小数点左边s位,并四舍五入。然后检验有效位是否 <= p + |s|。
s = 0
此时NUMBER表示整数。
eg:
Actual Data Specified As Stored As
----------------------------------------
123.89 NUMBER 123.89
123.89 NUMBER(3) 124
123.89 NUMBER(6,2) 123.89
123.89 NUMBER(6,1) 123.9
123.89 NUMBER(4,2) exceeds precision (有效位为5, 5 > 4)
123.89 NUMBER(6,-2) 100
.01234 NUMBER(4,5) .01234 (有效位为4)
.00012 NUMBER(4,5) .00012
.000127 NUMBER(4,5) .00013
.0000012 NUMBER(2,7) .0000012
.00000123 NUMBER(2,7) .0000012
1.2e-4 NUMBER(2,5) 0.00012
1.2e-5 NUMBER(2,5) 0.00001
123.2564 NUMBER 123.2564
1234.9876 NUMBER(6,2) 1234.99
12345.12345 NUMBER(6,2) Error (有效位为5+2 > 6)
1234.9876 NUMBER(6) 1235 (s没有表示s=0)
12345.345 NUMBER(5,-2) 12300
1234567 NUMBER(5,-2) 1234600
12345678 NUMBER(5,-2) Error (有效位为8 > 7)
123456789 NUMBER(5,-4) 123460000
1234567890 NUMBER(5,-4) Error (有效位为10 > 9)
12345.58 NUMBER(*, 1) 12345.6
0.1 NUMBER(4,5) Error (0.10000, 有效位为5 > 4)
0.01234567 NUMBER(4,5) 0.01235
0.09999 NUMBER(4,5) 0.09999
部分内容来源于:http://dev.csdn.net/develop/article/70/70922.shtm
分享到:
相关推荐
NUMBER 类型的对应关系取决于 Oracle 中 NUMBER 类型的定义和所占用的存储空间。 四、LOB 类型 Oracle 中的 BLOB 类型可以对应 DB2 的 BLOB 类型,用于存储大型二进制数据。 Oracle 中的 CLOB 类型可以对应 DB2 的...
- **Number 类型**:作为Oracle的内置数据类型之一,`NUMBER`类型在Oracle早期版本中几乎是唯一可用的数值类型。在Oracle 9i R2及之前的版本中,主要支持的是`NUMBER`类型来存储数值数据。 - **新数值类型**:自...
在 Oracle 中,默认情况下,数字类型的数据显示格式为科学计数法,这会导致数字显示不正确,例如 select to_number('12345678912') from dual; 结果会显示为 1.2346E+10,而不是我们期望的 12345678912。这种情况在 ...
3. **bit**: 用于存储布尔值或单个位的信息,在SQL Server中占1个字节,而Oracle中的对应类型为`NUMBER(2)`。 4. **char**: 固定长度的字符类型,例如`char(10)`表示存储10个字符,在Oracle中对应的是`CHAR(10)`。 5...
NUMBER类型可以存储非常大的数值,并具有极高的精度,其存储格式复杂,根据数值的大小和精度自动调整存储空间。较小的整数类型如INTEGER和SMALLINT,实际上是NUMBER的子集,它们的存储方式类似,但范围有限。 日期...
Oracle 中的 NUMBER 类型可以对应 DB2/400 中的多种类型,这种对应关系要依赖于 Oracle 中 number 将用于保存何种类型的数据,是整型还是带有小数位的实型数据。例如,Oracle 中的 NUMBER 类型可以对应 DB2/400 中的...
Oracle 中有多种数字类型,包括 number、integer 等。 * number(m,n):可变长的数值列,允许 0、正值及负值。m 是所有有效数字的位数,n 是小数点以后的位数。 number 类型的数字可以表示各种数字类型,包括整数...
1. **数值类型**:int、decimal、long、short等对应Oracle的NUMBER,bool对应PL/SQL的BOOLEAN。 2. **字符串类型**:string对应Oracle的VARCHAR2或CHAR,DateTimeOffset对应TIMESTAMP WITH TIME ZONE。 3. **日期/...
- `bit`在SQL Server中没有直接对应的Oracle数据类型,但可以近似用单字节的`NUMBER(1)`表示。 - `datetime`和`smalldatetime`在SQL Server中对应Oracle的`DATE`,表示日期和时间。 - `decimal`和`numeric`在SQL ...
例如,当你从数据库查询数据时,需要知道如何将 Oracle 的 `NUMBER` 类型转换为 Java 中的 `BigDecimal`,或者如何处理 `TIMESTAMP` 类型以考虑时区信息。理解这些细节将确保数据的准确性和应用程序的兼容性。
Oracle中的NUMBER类型可以对应DB2/400中的多种类型,例如SMALLINT、INTEGER、BIGINT、DECIMAL等。具体的对应关系取决于Oracle中的NUMBER类型将用于保存什么类型的数据,是整型还是带有小数位的实型数据。此外,还要...
在处理Oracle中的"Number"时,Java开发者需要根据数据库定义的"Number"类型细节来选择合适的Java数据类型。如果"Number"类型定义为如"Number(13,0)",意味着它只包含整数部分,可以考虑使用Integer。而如果"Number...
Oracle在数据库内部通过相应的算法转换来进行数据存储,本文简单介绍Oracle的Number型数值存储及转换.这个内容是为了回答留言板上的2119号问题.我们可以通过DUMP函数来转换数字的存储形式,一个简单的输出类似如下格式...
你可以选择添加约束,如主键或唯一键,来限制表类型中的数据。 接下来,我们讨论如何声明和使用表变量。表变量是基于已定义的表类型的实例,它们可以作为局部变量在PL/SQL块中声明。例如: ```sql DECLARE my_...
在Oracle中,我们有类似的数据类型,如NUMBER、VARCHAR2、DATE、CLOB等。值得注意的是,Oracle的DATE类型包含了日期和时间,而MySQL通常需要单独的DATE和TIME类型来处理日期和时间。 Java与数据库交互时,通常使用...
- `bigint`: 存储非常大的整数值,等同于Oracle中的`NUMBER`类型。 - `int`: 存储整数值,等同于Oracle中的`NUMBER`类型。 - `smallint`: 存储较小范围内的整数值,等同于Oracle中的`NUMBER`类型。 - `tinyint`:...
此外,还可以通过指定精度(P)和标度(S)来进一步限定NUMBER类型的取值范围,如`NUMBER(5, 2)`表示该列最多可以存储5位数字,其中包含2位小数。 #### Date 类型 - **DATE**: 用于存储日期和时间信息,格式为`...
在Oracle数据库中,CLOB(Character Large Object)是一种用于存储大量文本数据的数据类型,如XML文档、长篇文章或任何其他非二进制的大型数据。本文将深入探讨Oracle中的CLOB类型文字处理,以及如何在实际操作中...
- 若Oracle中的NUMBER类型用于存储整数数据,则可以考虑与DB2/400中的SMALLINT、INTEGER或BIGINT对应。 - 若NUMBER类型用于存储浮点数,则可能需要根据精度要求选择DB2/400中的DECIMAL或NUMERIC类型。 #### 四、...