• DB2的常用数据类型


    今天在db2中查询数据时出现错误:

    Overflow occurred during numeric data type conversion:SQLCODE=-413, SQLSTATE=22003, DRIVER=3.53.71

    数字数据类型转换过程中出现溢出

    select * from rpbbzd where  to_number(BBZD_BEGIN) < 2018012004
    and to_number(BBZD_END) >=2018012004

    此sql在db210.5中没有问题,但是在8.2中会爆以上溢出错误。

    改成:

    select * from rpbbzd where  cast(BBZD_BEGIN as INT) < 2018012004
    and cast(BBZD_END as INT) >=2018012004

    仍然会有错误,对比了一下数据发现超出int类型的范围了,改用bigint:

    select * from rpbbzd where  cast(BBZD_BEGIN as BIGINT) < 2018012004
    and cast(BBZD_END as BIGINT) >=2018012004

    --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    DB2的常用数据类型包括以下几个:

    一.数字型的。

    1. SMALLINT          ---短整型,范围为-32768~+32767

    2. INT/INTEGER    ---整型,4个字节,范围为-2147483648~+2147483647,一遍多用于做自动生成的序列,或者用作表记录的id使用。

    3. BIGINT               ----大整型,8个字节,精度为19位,够大了,一般较少使用。

    4. DECIMAL(P,S)  ---小数型,其中P为精度,S为小数位数,隐含小数点(小数点不计入位数)。比如M DECIMAL(5,2),那么就是指定M的精度为5位(除小数点外所有数字的位数不能超过5),否则插入时会发生数据位溢出;而小数的位数不能超过2,否则插入时会截断小数位。

    比如:

    M: 123.45(成功) 

    M:12.345(成功,但是截断为12.34) 

    M:1234.5(失败,整数位超标,溢出报错)

    5. REAL                 ---单精度浮点型,不常用

    6. DOUBLE          ----双精度浮点型,不常用

    二.字符型

    char(n)                    ----定长字符串,长度范围1~254,常用

    varchar(n)              ----变长字符串,长度范围1~32672,常用

    CLOB                     -----字符大对象字符串,很大,没用过,要用再研究。

    三.时间型

    date                        ----占4个字节   插入格式为 'YYYY-MM-DD'

    time                        ----占3个字节   插入格式为 'HH:MM:SS'

    timestamp            ----占10个字节 插入格式为 'YYYY-MM-DD HH:MM:SS'

    当然,这都是采用内部格式压缩过的。

    四.空值

    空值使用NULL表示,NULL可以表示任何数据类型的空值,但是NULL不能参加任何算数运算和逻辑运算,如果勉强运算得到的也是NULL
    ---------------------
    作者:dlodj
    来源:CSDN
    原文:https://blog.csdn.net/DLODJ/article/details/7033619
    版权声明:本文为博主原创文章,转载请附上博文链接!

  • 相关阅读:
    基于SAAJ的客户端
    SOAP消息的结构
    服务端的思考
    最简单的Web Service实现
    PLSQL的注释技巧
    复杂分支图示
    Tomcat常见错误
    maven常见错误
    SpringMvc参数传递中乱码问题
    springmvc常遇到的错误
  • 原文地址:https://www.cnblogs.com/wuxinyan/p/10330786.html
Copyright © 2020-2023  润新知