数据类型:

字符串类型 描述
CHARACTER(n) n bytes定长字符串. n 大于0 不大于255. 默认 1.
VARCHAR(n) 变长字符串,最大 n bytes. n大于 0 小于表空间的 page size. 最大32704.
CLOB(n) 变长字符串,最大2 147 483 647.默认1.
GRAPHIC(n) 定长图形字符串, n 个双字节字符. n 大于 0 小于128. 默认 1.
VARGRAPHIC(n) 变长图形字符串. 最大长度 n, 大于0小于表空间的page size. 最大16352.
DBCLOB(n) 双字节变长字符串, n不能超过 1 073 741 824.默认1.
BINARY(n) 定长或变长二进制字符串. n 大于 0 不大于 255. 默认1.
VARBINARY(n) 变长二进制字符串,n大于 0小于表空间的 page size. 最大 32704.
BLOB(n) 变长二进制字符串,n 不大于 2 147 483 647. 默认 1.
数值类型 描述
SMALLINT 小整数,精度(即通常说的长度) 15 bits. 范围 -32768 到 +32767.

INTEGER or
INT

整数,精度 31 bits的二进制整数,范围 -2147483648 到 +2147483647.
BIGINT 大整数,精度 63 bits二进制整数,范围 -9223372036854775808 到 +9223372036854775807.

DECIMAL or
NUMERIC

压缩十进制数,小数点位置由precision和scale决定,scale非负且小于精度.最大精度 31 digits.

decimal 列中的值有同样的precision 和 scale.范围 1 - 10³¹ 到 10³¹ - 1.

DECFLOAT 十进制浮点数,最大精度 34 位.(早期DB2版本不支持)
REAL 单精度浮点数,32 bits.范围大约为 -7.2E+75 到 7.2E+75.最大负值约为 -5.4E-79, 最小正值约为 5.4E-079.
DOUBLE 双精度浮点数,64-bits. 范围大约为 -7.2E+75 到 7.2E+75.最大负值约为 -5.4E-79, 最小正值约为 5.4E-079.
时间日期类型 描述
DATE 年月日组成的日期,范围 0001-01-01 到 9999-12-31.
TIME 时分秒组成的时间,范围 00.00.00 到 24.00.00.
TIMESTAMP 年月日时分秒微妙组成的时间,范围 0001-01-01-00.00.00.000000000 到 9999-12-31-24.00.00.000000000 精确到纳秒. 可保存时区信息

Character large objects (CLOBs)存储超过VARCHAR限制的文本。Double-byte character large objects (DBCLOBs)
Binary large objects (BLOBs)存储图片,音频,视频。

Distinct Types :用户自定义类型,是基于DB2内置类型的别名,但DB2会将其作为不同的类型进行处理。例如:

CREATE DISTINCT TYPE US_DOLLAR AS DECIMAL (9,2);
CREATE DISTINCT TYPE CANADIAN_DOLLAR AS DECIMAL (9,2);

系统默认值:

类型 类型 Default
数值 SMALLINT, INTEGER, BIGINT, DECIMAL, NUMERIC, REAL, DOUBLE, DECFLOAT, or FLOAT 0
定长字符串 CHAR or GRAPHIC

BINARY

空格

十六进制0

变长字符串 VARCHAR, CLOB, VARGRAPHIC, DBCLOB, VARBINARY, or BLOB 空串
日期 DATE 当前日期
时间 TIME 当前时间
时间日期 TIMESTAMP 当前 TIMESTAMP
ROWIDs ROWID DB2生成

关于ALTER COLUMN:

DB2支持ALTER TABLE ALTER COLUMN...但列属性的更改需要分开操作:

  1. 1.更改类型(设置为主键的列不能更改类型)
  2. ALTER TABLE "SCHEMA"."TABLENAME" ALTER COLUMN "COL" SET DATA TYPE VARCHAR(32);
  3. 2.更改默认值
  4. ALTER TABLE "SCHEMA"."TABLENAME" ALTER COLUMN "COL" SET DEFAULT 'ABC';
  5. 系统默认值:
  6. ALTER TABLE "SCHEMA"."TABLENAME" ALTER COLUMN "COL" SET DEFAULT; --设置默认值
  7. ALTER TABLE "SCHEMA"."TABLENAME" ALTER COLUMN "COL" DROP DEFAULT; --删除默认值
  8. 3.更改是否允许空值
  9. ALTER TABLE "SCHEMA"."TABLENAME" ALTER COLUMN "COL" SET NOT NULL;
  10. ALTER TABLE "SCHEMA"."TABLENAME" ALTER COLUMN "COL" DROP NOT NULL;
  11. 更改列类型,是否允许空值后,需要执行REORG TABLE "TABLENAME";
  12. 更改默认值后,通常需要执行UPDATE "SCHEMA"."TABLENAME" SET "COL" = DEFAULT WHERE "COL" IS NULL;

部分内容引自:http://pic.dhe.ibm.com/infocenter/dzichelp/v2r2/index.jsp?topic=%2Fcom.ibm.db2z10.doc.intro%2Fsrc%2Ftpc%2Fdb2z_stringdatatypes.htm

db2 数据类型的更多相关文章

  1. DB2数据类型

    DB2数据库的内置数据类型主要分成数值型(numeric).字符串型(character string).图形字符串(graphic string).二进制字符串型(binary string)或日期 ...

  2. Oracle VS DB2 数据类型

    =========================Oracle VS DB2==================================== 本文转自:http://www.bitscn.co ...

  3. DB2数据类型(抄袭)

    数字 数据类型        精度          最小值                                        最大值                       smal ...

  4. DB2 Vs MySQL系列 | MySQL与DB2的数据类型对比

    随着MySQL数据库的应用越来越广泛,DB2向MySQL数据库的迁移需求也越来越多.进行数据库之间迁移的时候,首先遇到的并且也是最基本最重要的就是两种数据库数据类型之间的转换. 相关阅读: 从商用到开 ...

  5. DB2常用sql函数 (转载)

    http://www.techonthenet.com/sql/index.php 一.字符转换函数 1.ASCII() 返回字符表达式最左端字符的ASCII 码值.在ASCII()函数中,纯数字的字 ...

  6. Oracle的Numer类型与C,C#数据类型对应关系

    最近一直在编和Oracle数据库相关程序.Oracle的Number类型和C语言,C#语言类型的对应关系,在网络上查找很久,也没有找到说明文字.但在http://oracle.chinaitlab.c ...

  7. db2和oracle字段类型对比

    在网上找到一片关于oracle与DB2数据类型的比较,特记下来. Oracle DB2/400 Oracle数据类型 注意事项 DB2 UDB数据类型 注意事项 DATE DATETIMETIMEST ...

  8. 从商用到开源:15个维度,全面剖析DB2与MySQL数据库的差异

    随着MySQL数据库的应用越来越广泛,DB2向MySQL数据库的迁移需求也越来越多.进行数据库之间迁移的时候,首先遇到的并且也是最基本最重要的就是两种数据库数据类型之间的转换. 相关阅读: 从商用到开 ...

  9. DB2的sql函数

    转自:http://blog.chinaunix.net/uid-21162795-id-3587646.html 一.字符转换函数 1.ASCII() 返回字符表达式最左端字符的ASCII 码值.在 ...

随机推荐

  1. CharSequence的getText()与String的getString()(转)

    CharSequence的getText()与String的getString()『Android系列七』 曾经在学习中碰见两种获取常量的方式: CharSequence chrs = getText ...

  2. FZU Problem 2029 买票问题(树状数组)

    当我看到题目是5秒的时候,压根没有想树状数组,一直奔着模拟队列去想了,最后也没搞定,赛后看到大神的题解才恍然大悟,原来如此,题目中有明显的暗示,求前n项和,骤然感叹,自己太low... 果然还是要多做 ...

  3. php示例代码

    11111<?php $var = 'ABCDEFGH:/MNRPQR/'; echo "Original: $var<hr />\n"; /* 这两个例子使用 ...

  4. 《accelerated c++》第九章---设计类

    本章简单介绍了类的设计,但是包含了一些好的设计原则. 1一些通用的设计原则 (1)一个函数是否设计成成员函数的原则:如果这个函数改变对象的状态,那么这个函数就应该成为这个对象的成员. (2)对于内置类 ...

  5. Task Cancellation: Parallel Programming

    http://beyondrelational.com/modules/2/blogs/79/posts/11524/task-cancellation-parallel-programming-ii ...

  6. C#使用FFmpeg 将视频格式转换成MP4示例

    一.常用视频格式分辨率 640x480p 720p格式,分辨率为1280×720p / 60Hz,行频为45kHz 1080p格式,分辨率为1920×1080逐行扫描,专业格式 二.FFmpeg部分参 ...

  7. linux自动启动程序

    下面用自启动apache为例: 有两种方法可以让Apache在系统启动时自动启动   1. 在/etc/rc.d/rc.local中增加启动apache的命令,例如:/usr/local/httpd/ ...

  8. 引用 struts2标签详解 - wo的的日志 - 网易博客

    引用 元元 的 struts2标签详解   引用 COLD 的 struts2标签详解 要在jsp中使用Struts2的标志,先要指明标志的引入.通过jsp的代码的顶部加入以下的代码: <%@t ...

  9. sublime text 配置文件中文说明

    原文地址:http://www.feelcss.com/sublime-text-2-settings.html // While you can edit this file, it's best ...

  10. Laravel 安装

    其实,laravel的安装网上给了很多方法,但是你可以直接根据laravel中国官网http://www.golaravel.com/docs/4.1/installation/给出的三种方法,选择其 ...