今天在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
版权声明:本文为博主原创文章,转载请附上博文链接!

DB2的常用数据类型的更多相关文章

  1. NoSQL初探之人人都爱Redis:(2)Redis API与常用数据类型简介

    一.Redis API For .Net 首先,不得不说Redis官方提供了众多的API开发包,但是目前Redis官方版本不支持.Net直接进行连接,需要使用一些第三方的开源类库.目前最流行的就是Se ...

  2. MySQL数据库3 - MySQL常用数据类型

    一. MySql常用数据类型 数据类型:整数(tinyint smailint int bigint) 定点数 decimal(p,s) ------ 小数点位置固定的       ---> 数 ...

  3. 【转】NoSQL初探之人人都爱Redis:(2)Redis API与常用数据类型简介

    一.Redis API For .Net 首先,不得不说Redis官方提供了众多的API开发包,但是目前Redis官方版本不支持.Net直接进行连接,需要使用一些第三方的开源类库.目前最流行的就是Se ...

  4. Mssql中一些常用数据类型的说明和区别

    Mssql中一些常用数据类型的说明和区别 1.bigint 占用8个字节的存储空间,取值范围在-2^63 (-9,223,372,036,854,775,808) 到 2^63-1 (9,223,37 ...

  5. Redis常用数据类型介绍、使用场景及其操作命令

    Redis常用数据类型介绍.使用场景及其操作命令 本文章同时也在cpper.info发布. Redis目前支持5种数据类型,分别是: 1.String(字符串) 2.List(列表) 3.Hash(字 ...

  6. Redis简介、与memcached比较、存储方式、应用场景、生产经验教训、安全设置、key的建议、安装和常用数据类型介绍、ServiceStack.Redis使用(1)

    1.NOSQL简介 nosql的产生并不是要彻底的代替关系型数据库,而是作为传统关系型数据库的一个补充. Facebook和360使用Cassandra来存储海量社交数据 Twitter在其url抓取 ...

  7. Mysql常用数据类型

    Mysql常用数据类型 数字: 字符串: 时间:

  8. python常用数据类型内置方法介绍

    熟练掌握python常用数据类型内置方法是每个初学者必须具备的内功. 下面介绍了python常用的集中数据类型及其方法,点开源代码,其中对主要方法都进行了中文注释. 一.整型 a = 100 a.xx ...

  9. ios中常用数据类型相互转换

    ios中常用数据类型相互转换 //1. NSMutableArray和NSArray互转 // NSArray转为NSMutableArray NSMutableArray *arrM = [arr ...

随机推荐

  1. Winform程序实现多显示屏、多屏幕显示的2种方法

    这篇文章主要介绍了Winform窗口实现多显示屏显示的2种方法,本文直接给出了实现代码,并对其中的一些重要参数做了解释,需要的朋友可以参考下. 一台主机连接了2台显示器(2个显卡),要求一个程序的两个 ...

  2. Operating System-Thread(1)What and Why Thread &&进程和线程的对比

    开始线程(Thread)之旅,作为程序员,打交道更多的是线程,各种多线程程序,并行编程都是以线程为基础进行的.本文主要内容: What and Why Thread 进程和线程的对比 一.What a ...

  3. linux普通用户home目录锁定

  4. <正则吃饺子> :关于Java的native方法(转)

    感谢作者的分享,原文地址:http://blog.csdn.net/wike163/article/details/6635321 一. 什么是Native Method   简单地讲,一个Nativ ...

  5. [poj3264]rmq算法学习(ST表)

    解题关键:rmq模板题,可以用st表,亦可用线段树等数据结构 log10和log2都可,这里用到了对数的换底公式 类似于区间dp,用到了倍增的思想 $F[i][j] = \min (F[i][j - ...

  6. js开发:数组的push()、pop()、shift()和unshift()(转)

    js开发:数组的push().pop().shift()和unshift() 2017-05-18 11:49 1534人阅读 评论(0) 收藏 举报  分类: javascript开发(22)  版 ...

  7. Entity Framework Code-First(10.1):EntityTypeConfiguration

    EntityTypeConfiguration Class in Code-First: Before we start to configure using Fluent API, let's se ...

  8. 理解setTimeout和setInterval

    setTimeout和setInterval,这两个js函数都是用来定时执行.setTimeout执行一次,setInterval执行多次. 问题出现在今天,使用setInterval是,设置执行速度 ...

  9. C# BackgroundWorker(异步线程)

    日期:2018年11月28日 环境:Windows 10,VS2015 前言  .NET 类库中提供了一个快捷使用多线程的帮助类BackgroundWorker,能够快速创建一个新的线程,并能报告进度 ...

  10. Python:列表也能拆包?

    前几天,微信学习群里有个小伙伴在看书时遇到了这样一个问题,在群里提问,看下图: 这是常用的 matplotlib 库,只是一般我们调用 plot 方法绘图时,不会去关心它的返回值.然而 plt1, = ...