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
版权声明:本文为博主原创文章,转载请附上博文链接!
DB2的常用数据类型的更多相关文章
- NoSQL初探之人人都爱Redis:(2)Redis API与常用数据类型简介
一.Redis API For .Net 首先,不得不说Redis官方提供了众多的API开发包,但是目前Redis官方版本不支持.Net直接进行连接,需要使用一些第三方的开源类库.目前最流行的就是Se ...
- MySQL数据库3 - MySQL常用数据类型
一. MySql常用数据类型 数据类型:整数(tinyint smailint int bigint) 定点数 decimal(p,s) ------ 小数点位置固定的 ---> 数 ...
- 【转】NoSQL初探之人人都爱Redis:(2)Redis API与常用数据类型简介
一.Redis API For .Net 首先,不得不说Redis官方提供了众多的API开发包,但是目前Redis官方版本不支持.Net直接进行连接,需要使用一些第三方的开源类库.目前最流行的就是Se ...
- Mssql中一些常用数据类型的说明和区别
Mssql中一些常用数据类型的说明和区别 1.bigint 占用8个字节的存储空间,取值范围在-2^63 (-9,223,372,036,854,775,808) 到 2^63-1 (9,223,37 ...
- Redis常用数据类型介绍、使用场景及其操作命令
Redis常用数据类型介绍.使用场景及其操作命令 本文章同时也在cpper.info发布. Redis目前支持5种数据类型,分别是: 1.String(字符串) 2.List(列表) 3.Hash(字 ...
- Redis简介、与memcached比较、存储方式、应用场景、生产经验教训、安全设置、key的建议、安装和常用数据类型介绍、ServiceStack.Redis使用(1)
1.NOSQL简介 nosql的产生并不是要彻底的代替关系型数据库,而是作为传统关系型数据库的一个补充. Facebook和360使用Cassandra来存储海量社交数据 Twitter在其url抓取 ...
- Mysql常用数据类型
Mysql常用数据类型 数字: 字符串: 时间:
- python常用数据类型内置方法介绍
熟练掌握python常用数据类型内置方法是每个初学者必须具备的内功. 下面介绍了python常用的集中数据类型及其方法,点开源代码,其中对主要方法都进行了中文注释. 一.整型 a = 100 a.xx ...
- ios中常用数据类型相互转换
ios中常用数据类型相互转换 //1. NSMutableArray和NSArray互转 // NSArray转为NSMutableArray NSMutableArray *arrM = [arr ...
随机推荐
- JS之事件监听
一 如果事件监听类似于如下写法,则最终只会执行最后一个事件监听,其他监听都会被覆盖掉. window.onload=funtion(){console.log(1);}; window.onload= ...
- [转]javascript单元测试
1. 什么是单元测试 在计算机编程中,单元测试(又称为模块测试)是针对程序模块(软件设计的最小单位)来进行正确性检验的测试工作.程序单元是应用的最小可测试部件.在过程化编程中,一个单元就是单 ...
- bzoj 2648 SJY摆棋子——KDtree
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=2648 第一道KDtree! 学习资料:https://blog.csdn.net/zhl30 ...
- win7下vs2010开发atl服务
问题一: 编译服务后,提示出下错误 Microsoft.CppCommon.targets(113,5): error MSB3073: 命令 " ***.exe " /RegS ...
- MFC中如何不使用Unicode字符集
命令窗口:调试->属性-> 把字符集设置为:未设置
- nginx实现防盗链配置方法介绍
有些朋友觉得防盗链就是防止图片,其实有很多东西要进行防盗链了,下面我来介绍在nginx中实现防盗链配置方法有对图片防盗链与下载资源等. 防盗链配置 假设网站域名是 www.php100.com. 编辑 ...
- 三 volatile关键字
一:内存模型: 大家都知道,计算机在执行程序时,每条指令都是在CPU中执行的,而执行指令过程中,势必涉及到数据的读取和写入.由于程序运行过程中的临时数据是存放在主存(物理内存)当中的,这时就存在一个问 ...
- C++零碎知识点(一)
1.sizeof用法总结 ①与strlen比较 strlen 计算字符数组的字符数,以"\0"为结束判断,但不包括. sizeof 计算数据(数组.变量.类型.结构 ...
- rsyn文件传输
Rsync的命令格式可以为以下六种: rsync [OPTION]... SRC DEST rsync [OPTION]... SRC [USER@]HOST:DEST rsync [OPTION]. ...
- RN控件之TextInput
/** * Sample React Native App * https://github.com/facebook/react-native */ 'use strict'; import Rea ...