`

Oracle中NUMBER类型问题

阅读更多
在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位向右的数字被舍入
分享到:
评论

相关推荐

    ORACLE中科学计数法显示问题的解决

    解决 ORACLE 中科学计数法显示问题的关键是正确地设置 numwidth 参数的值,以便正确地显示数字类型的数据。在实际应用中,我们需要根据需要灵活地设置 numwidth 的值,以便满足不同的应用需求。 本文档的测试环境为...

    Oracle数据类型之Number

    - **Number 类型**:作为Oracle的内置数据类型之一,`NUMBER`类型在Oracle早期版本中几乎是唯一可用的数值类型。在Oracle 9i R2及之前的版本中,主要支持的是`NUMBER`类型来存储数值数据。 - **新数值类型**:自...

    sql server 和oracle 中数据类型的区别

    3. **bit**: 用于存储布尔值或单个位的信息,在SQL Server中占1个字节,而Oracle中的对应类型为`NUMBER(2)`。 4. **char**: 固定长度的字符类型,例如`char(10)`表示存储10个字符,在Oracle中对应的是`CHAR(10)`。 5...

    Oracle与DB2数据类型分类对应说明

    Oracle 中的 NUMBER 类型可以对应 DB2/400 中的多种类型,这种对应关系要依赖于 Oracle 中 number 将用于保存何种类型的数据,是整型还是带有小数位的实型数据。例如,Oracle 中的 NUMBER 类型可以对应 DB2/400 中的...

    Oracle与.Net 数据类型映射

    1. **数值类型**:int、decimal、long、short等对应Oracle的NUMBER,bool对应PL/SQL的BOOLEAN。 2. **字符串类型**:string对应Oracle的VARCHAR2或CHAR,DateTimeOffset对应TIMESTAMP WITH TIME ZONE。 3. **日期/...

    oracle基本数据类型

    Oracle 中有多种数字类型,包括 number、integer 等。 * number(m,n):可变长的数值列,允许 0、正值及负值。m 是所有有效数字的位数,n 是小数点以后的位数。 number 类型的数字可以表示各种数字类型,包括整数...

    sqlserver-oracle 数据类型对照

    - `bit`在SQL Server中没有直接对应的Oracle数据类型,但可以近似用单字节的`NUMBER(1)`表示。 - `datetime`和`smalldatetime`在SQL Server中对应Oracle的`DATE`,表示日期和时间。 - `decimal`和`numeric`在SQL ...

    oracle-java数据类型1

    例如,当你从数据库查询数据时,需要知道如何将 Oracle 的 `NUMBER` 类型转换为 Java 中的 `BigDecimal`,或者如何处理 `TIMESTAMP` 类型以考虑时区信息。理解这些细节将确保数据的准确性和应用程序的兼容性。

    Oracle与DB2数据类型的分类对应说明

    NUMBER 类型的对应关系取决于 Oracle 中 NUMBER 类型的定义和所占用的存储空间。 四、LOB 类型 Oracle 中的 BLOB 类型可以对应 DB2 的 BLOB 类型,用于存储大型二进制数据。 Oracle 中的 CLOB 类型可以对应 DB2 的...

    Oracle与DB2数据类型的对应说明书

    Oracle中的NUMBER类型可以对应DB2/400中的多种类型,例如SMALLINT、INTEGER、BIGINT、DECIMAL等。具体的对应关系取决于Oracle中的NUMBER类型将用于保存什么类型的数据,是整型还是带有小数位的实型数据。此外,还要...

    java与oracle等数据库类型对应

    在处理Oracle中的"Number"时,Java开发者需要根据数据库定义的"Number"类型细节来选择合适的Java数据类型。如果"Number"类型定义为如"Number(13,0)",意味着它只包含整数部分,可以考虑使用Integer。而如果"Number...

    Oracle表类型表变量使用

    你可以选择添加约束,如主键或唯一键,来限制表类型中的数据。 接下来,我们讨论如何声明和使用表变量。表变量是基于已定义的表类型的实例,它们可以作为局部变量在PL/SQL块中声明。例如: ```sql DECLARE my_...

    java、mysql以及oracle数据类型对照表

    在Oracle中,我们有类似的数据类型,如NUMBER、VARCHAR2、DATE、CLOB等。值得注意的是,Oracle的DATE类型包含了日期和时间,而MySQL通常需要单独的DATE和TIME类型来处理日期和时间。 Java与数据库交互时,通常使用...

    ORACLE_NUMBER类型Scale为0引发的问题

    摘要: 遇到了一个很有意思的NUMBER类型Scale引发的问题,我用一个简单的测试用例来展示一下这个案例。假如有个TEST的表,有个字段类型为NUMBER,我插入下面两条数据 CREATE TABLE TEST ( Category VARCHAR(12), ...

    mssql2oracle类型对比

    - `bigint`: 存储非常大的整数值,等同于Oracle中的`NUMBER`类型。 - `int`: 存储整数值,等同于Oracle中的`NUMBER`类型。 - `smallint`: 存储较小范围内的整数值,等同于Oracle中的`NUMBER`类型。 - `tinyint`:...

    Oracle各种数据类型的介绍,适合中高级编程开发人员

    此外,还可以通过指定精度(P)和标度(S)来进一步限定NUMBER类型的取值范围,如`NUMBER(5, 2)`表示该列最多可以存储5位数字,其中包含2位小数。 #### Date 类型 - **DATE**: 用于存储日期和时间信息,格式为`...

    Oracle中CLOB类型文字处理代码

    在Oracle数据库中,CLOB(Character Large Object)是一种用于存储大量文本数据的数据类型,如XML文档、长篇文章或任何其他非二进制的大型数据。本文将深入探讨Oracle中的CLOB类型文字处理,以及如何在实际操作中...

    ORACLE 自动类型转换

    7. **工具支持**:在开发和维护过程中,使用Oracle的开发工具,如SQL Developer,可以帮助识别潜在的类型转换问题。这些工具通常会提供警告或错误提示,帮助开发者提前发现并解决类型不匹配的问题。 综上所述,理解...

Global site tag (gtag.js) - Google Analytics