下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、DB2 的基本数据类型字段类型描述字段长度及其缺省值Char(size)用于保存定长(size)字节的字符串数据。每行定长(不足部分补为空格) ;最大长度为 254 字节,缺省值为每行1 字节。Varchar(size)用于保存变长的字符串数据。其中最大字节长度由(size才旨定。每行长度可变,最大长度为 4000 字节。数据长度缺省为 1Long Varchar用于保存变长的字符串数据。每行长度可变,最大长度为 4321700 字节。Graphic(size)双字节字符串。每行定长(不足部分补为空格) 。最大长度为 127 字节。Vargraphic(size)可变长,双字节字符串。每行变长
2、。最大长度为 127 字节。Long Vargraphic双字节字符串。最大长度为 16350 双字节字符串。Timestamp用于改变管理的二进制值数据,包括年月日时分秒毫秒。字节数为 26Date保存定长的日期数据,范围为 0000 年到 9999 。每行固定为 10 字节长度。Time保存定长的时间数据。每行固定为 8 字节长度。Integer保存整型数据,范围为 -2147483648 到 +2147483647 。最大长度为 4 字节 32 - 1 字节或 4G。Smallint保存整型数据,范围为 -32768 到 +32767最大长度为 2 字节 32 - 1 字节或 4G。Bi
3、gint保存整型数据,范围为 -9223372036854775808 到 +9223372036854775807 最大长度为 2 字节 64 - 1 字节。Real保存单精度浮点数据类型最大长度为 4 字节。指数表示。Double保存双精度浮点数据类型,范围为 -2.23E-308到+2.23E-308。最大长度为 8 字节。指数表示。Float保存浮点数据类型,范围为-2.23E-308至ij+2.23E-308。最大长度为 8 字节。指数表示。Numeric(p,s)保存精确数值数据类型,范围为-10E-38至iJ+10E-38,p是精度,总小数位数(138),s是小数位(小数位小于等
4、于p)最大长度为217 字节。Decimal(p,s)保存精确数值数据类型,范围为-10E-38至iJ+10E-38,p是精度,总小数位数(138),s是小数位(小数位小于等于p)最大长度为217 字节。Clob保存2GB长度以内的单字节文本数据最大长度为2G。DbClob保存1GB长度以内的双字节文本数据。最大长度为 1G 字符。Blob保存2GB长度以内的二进制数据。最大长度为 2G。支持Not Logged选项和 Compact选项我们今天主要向大家讲述的是DB2 数据类型,我们大家都知道DB2 内置数据类型其一共可以分成数值型(numeric)、字符串型(character strin
5、g)、图形字符串(graphic string)、二进 制字符串型( binary string )或日期时间型( datetime ) 。还有一种叫做 DATALINK的特殊数据类型。DATALINK值包含了对存储在数据库以外的文件 的逻辑引用。数值型 DB2 数据类型包括SMALLINT、 INTEGER、 BIGINT、 DECIMAL(p,s)、 REAL 和 DOUBLE。所有数值都有符号和精度。 精度是指除符号以外的二进制或十进制的位数。 如果数字的值大于等于零,就认为符号为正。小整型,SMALLINT:小整型是两个字节的整数,精度为 5位。小整型的范围从-32,768到32,76
6、7。大整型,INTEGER或INT:大整型是四个字节的整数,精度为 10位。大整型的范围从-2,147,483,648 到 2,147,483,647。巨整型 , BIGINT: 巨整型 是八 个 字节的 整数 , 精 度 为 19 位。 巨整型 的 范围 从 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 。小数型,DECIMAL(p,s)、 DEC(p,s)、 NUMERIC(p,s) 或 NUM(p,s) :小数型的值是一种压缩十进制数,它有一个隐含的小数点。压缩十进制数将以二-十进制编码( binary-coded deci
7、mal ,BCD)记数法的变体来存储。小数点的位置取决于数字的精度(p)和小数位(s)。小数位是指数字的小数部分的位数, 它不可以是负数, 也不能大于精度。最大精度是31 位。 小数型的范围从-1031+1 到 1031-1 。单精度浮点数( Single-precision floating-point ) , REAL: 单精度浮点数是实数的 32 位近似值。数字可以为零,或者在从-3.402E+38 到 -1.175E-37 或从 1.175E-37 到 3.402E+38 的范围内。双精度浮点数(Double-precision floating-point ), DOUBLE DOU
8、BLE PRECISION FLOAT 双精度浮点数是实数的 64 位近似值。 数字可以为零, 或者在从 -1.79769E+308 到 -2.225E-307或从 2.225E-307 到 1.79769E+308 的范围内。字符串是字节序列。 字符串包括CHAR(n) 类型的定长字符串和VARCHAR(n、) LONG VARCHAR或 CLOB(n) 类型的变长字符串。字符串的长度就是序列中的字节数。定长字符串,CHARACTER(n)或CHAR(n):定长字符串白长度介于1至U 254字节之间。如果没有指定长度,那么就认为是1 个字节。变长字符串,VARCHAR(n) CHARACTE
9、R VARYING(n) CHAR VARYING(n) VARCHAR(n)类型的字符串是变长字符串,最长可达32,672 字节。LONG VARCHAR LONG VARCHA吐型的字符串是变长字符串,最长可达32,700字节。字符大对象字符串(Character Large Object String), CLOB(nK|M|G) : CLOB是变长字符串,最长可以达到 2,147,483,647 字节。如果只指定了 n ,那么 n 的值就是最大长度。如果指定了 nK,那么最大长度就是n1,024 (n的最大值为 2,097,152)。如果指定了 nM ,那么最大长度就是 n1,048,
10、576 ( n 的最大值为 2,048 ) 。如果指定了nG ,那么最大长度就是n1,073,741,824 (n 的最大值是2) 。CLOB用于存储基于大单字节字符集(single-byte character set , SBCS字符的数据或基于混合(多字节字符集(MBCS)和SBCS字符的数据。图形字符串是表示双字节字符数据的字节序列。图形字符串包括类型为 GRAPHIC(n) 的定长图形字符串和类型为VARGRAPHIC(n、)LONG VARGRAPHIG口 DBCLOB(n)的变长图形字符串。 字符串的长度就是序列中双字节字符的数目。定长图形字符串,GRAPHIC(n)定长图形字符
11、串的长度介于1到127个双字节字符之间。如果没有指定长度,就认为是1 个双字节字符。变长图形字符串,VARGRAPHIC(n:) VARGRAPHIC(n)类型的字符串是变长图形字符串,最大长度可达 16,336 个双字节字符。LONG VARGRAPHIC LONG VARGRAPHIC类型的字符串是变长图形字符串,最大长度可达16,350 个双字节字符。双字节字符大对象字符串, DBCLOB(nK|M|G) : 双字节字符大对象是变长双字节字符图形字符串,最长可达1,073,741,823 个字符。如果只指定了 n ,那么 n 就是最大长度。如果指定了 nK,那么最大长度就是n1,024
12、(n的最大值为1,048,576)。如果指定了 nM ,那么最大长度就是n1,048,576 ( n 的最大值为1,024) 。如果指定了 nG,那么最大长度就是n1,073,741,824 (n的最大值是 1)。DBCLOB用于存储基于大 DBCS (双字节字符集,double-byte character set)字符的数据。二进制字符串是字节序列。二进制字符串包括BLOB(n) 类型的变长字符串,它用于容纳非传统型的数据,诸如图片、语音或混合媒体等,还可以容纳用户定义的类型及用户定义的函数的结构化数据。二进制大对象, BLOB(nK|M|G) :二进制大对象是变长字符串,最长可达2,14
13、7,483,647 字节。如果只指定了n,那么n就是最大长度。如果指定了nK,那么最大长度就是n1,024(n 的最大值为 2,097,152)。 如果指定了 nM , 那么最大长度就是n1,048,576(n 的最大值为2,048)。如果指定了nG,那么最大长度就是n1,073,741,824 (n的最大值是 2)。日期时间型 DB2数据类型包括 DATE TIME和TIMESTAMPS日期时间值可在某些算术和字符串操作中使用,而且兼容某些字符串,但它们既不是字符串,也不是数字。DATE DATE是一个由三部分组成的值(年、月和日)。年份部分的范围是从0001到9999。月份部分的范围是从1
14、 到 12 。 日部分的范围是从1 到 n, 其中 n 的值取决于月份。 DATE列长 10 个字节。TIME: TIME 是一个由三部分组成的值 (小时、 分钟和秒) 。 小时部分的范围是从0 到 24 。分钟和秒部分的范围都是从0 到 59。 如果小时为 24 , 分钟和秒的值都是0。 TIME 列长 8个字节。 TIMESTAMP: TIMESTAMP 是一个由七部分组成的值 (年、 月、 日、 小时、 分钟、 秒和微秒) 。年份部分的范围是从0001 到 9999。月份部分的范围是从1 到 12。日部分的范围是从1到 n ,其中 n 的值取决于月份。小时部分的范围是从0 到 24 。分
15、钟和秒部分的范围都是从 0 到 59。微秒部分的范围是从000000 到 999999。如果小时是24,那么分钟值、秒的值和微秒的值都是0。 TIMESTAMP 列长 26 个字节。日期时间值的字符串表示: 尽管DATE、 TIME 和 TIMESTAMP 的值的内部表示对用户是透明的,日期、时间和时间戳记也可以用字符串来表示,CHAR标量函数(请参阅SQL的"词类(partsof speech ) ")可以用于创建日期时间值的字符串表示。日期值的字符串表示是一个以数字开始,长度不少于8 个字符的字符串。日期值的月份和日部分中前面的零可以省略。时间值的字符串表示是以数字开头
16、,长度不少于4 个字符的字符串。时间值的小时部分前面的零可以省略,秒部分可以完全省略。如果秒的值没有指定,那么就认为是0。时间戳记值的字符串表示是以数字开头, 长度不少于16 个字符的字符串。 完整的时间戳记字符串表示形式为 yyyy-mm-dd-hh.mm.ss.nnnnnn 。时间戳记值的月、日或小时等几部分前面的零可以省略, 微秒可以截断或完全省略。 如果任何时间戳记值的微秒部分尾零被省略掉了,那么将假定空缺的数位上是零。自增长字段设计会超过最大值吗?应该不会 DB2 数据类型,范围精度 10 位了!在表中存储数据时, 不同类型的数据占用的空间和存储的方式都不相同。 接下来, 我们就简单
17、认识一下DB2 中的各种数据类型( Data Type) 。DB2 主要分成两类数据类型:内置的数据类型和用户自定义的数据类型。本节只介绍内置类型,用户自定义类型在3.17.2 节介绍。内置数据类型主要包括数值型、文本型、日期时间型和 XML 四大类。3.11.1 数值型数值型具体划分如图 3.19 所示。图 3.19 数值型数据的种类SMALLINT 称为小整型或短整型,是两个字节的整数,精度为 5 位,其数据表示范围从-32,768 到 32,767。INT称为整型,也可以写成 INTEGER是四个字节的整数,精度为 10位,其数据表示范围 从 -2,147,483,648 到 2,147
18、,483,647 。BIGINT 称为大整型或长整型,是八个字节的整数,精度为 19 位,其数据表示范围从9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 。REAL称为单精度浮点数,是实数的32位近似值。数字可以为零,或者在从-3.402E+38到-1.175E-37 或从 1.175E-37 到 3.402E+38 的范围内。DOUBLE 称 为 双 精 度 浮 点 数 , 是 实 数 的 64 位 近 似 值 。 数 字 可 以 为 零 , 或 者 在 从-1.79769E+308 到 -2.225E-307 或从 2.225E-
19、307 到 1.79769E+308 的范围内。DECFLOATW为十进制浮点数,是V9.5中引入的新数据类型,适合于处理准确的十进制业务。它具有DECIMAL 类型的准确性,同时又具有浮点数的性能优势,特别适合于在处理货币值相关的应用程序中使用。DECIMAL 称为十进制数, 是一种可以自己定义小数位数的压缩型十进制数, 也可以写成DEC,NUMERIC 或者 NUM ,定义这种类型的数据需要指定两个参数:DECIMAL(p,s)。 p 表示数字的总长度(不包括正负号和小数点) , s 表示小数长度。DECIMAL 类型的数据可以精确地表示指定精度的小数。 它所占用的存储空间与第一个参数,即
20、数字的总长度有关,计算公式为: tranc(p/2)+1 。其中 tranc 表示截取整数部分。3.11.2 字符型字符型具体划分如 3.20 所示。图 3.20 字符型数据的种类CHAR称为定长字符串,需要指定长度,如 CHAR(10)也可以写成 CHARACTER低度)。 定长字符串的长度介于1 到 254 字节之间。 如果没有指定长度, 那么就认为是1 个字节。VARCHAR称为变长字符串,需要指定最大长度,如 VARCHAR(20)变长字符串长度的最大 值是32672 。 存储变长字符串时, 需要额外花费 4 个字节来记录字符串的实际长度。 所以,如果指定了 VARCHAR(20)每个
21、这种类型的数据在硬盘上实际要占用20+4=24个字节的空间。 需要注意的是, 对于变长字符串的实际占用存储空间量还有一个限制: 数据必须适合放在单 个表空间页面上。也就是说,对于使用4K页表空间的表,长度不能超过 4 X 1024-4=4092 字节;对于 8K页表空间的表,长度不能超过 8 X 1024-4=8188字节;对于16K页表空 间的表,长度不能超过 16 X 1024-4=16380字节;对于 32K页表空间的表,长度不能超 过32 X 1024-4=32764字节,但是该数超过了VARCHAR的最大长度 32672 ,所以对于32K 页表空间的表,最大能够存放 32672 字节
22、。默认情况下表空间为 4K ,所以要使用 VARCHAR类型来存储超过 4092字节的数据,就需要显式创建更大页大小的表空间。LONG VARCHARW为大型变长字符串,不需要指定最大长度,其最大可以存储32700个字节。与VARCHAR类型不同的是,该数据类型不受表空间页大小的限制,对于4K页表空间的表,长度可以超过4092 字节,只要不超过32700 字节即可。实际在硬盘上占用的存储空间为 ( 字符串长度+24) , 24 个字节用于记录与该数值相关的信息。CLOB 称为大对象字符串, 需要指定长度, CLOB(n K|M|G) , 长度可以是字节, 也可以是K,M 或 G 等某一种单位,
23、 每个 CLOB 最大可以存储 2G 字节的数据。 CLOB 数据并不是直接 存放在表中, 而是单独存放在一个表空间中, 表中存放的是一个指针, 指向对应的实际数据。 GRAPHIC VARGRAPHIC LONG GRAPHIC DBCLOB分另与前面的 CHAR, VARCHAR LONG VARCHR和CLOB对应,只是都存储双字节字符,存储的长度都减小一半。BLOB 称为二进制大对象,也需要指定长度,BLOB(n K|M|G) ,长度可以是字节,也可以是K, M 或 G 等某一种单位, 每个 BLOB 最大可以存储 2G 字节的二进制数据。 与 CLOB 一 样,表中存放的也是指针,指向实际的数据。BLOB 适合于存放图片、音频、视频的容量非常大的内容, DB2 本身不考虑存放的内容是什么, 只是按照二进制的方式将数据存放起来,使用的时候还需要配合相
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025-2026学年传统服饰美术说课稿
- 过程控制系统点检员安全操作知识考核试卷含答案
- 墨锭制作工安全管理强化考核试卷含答案
- 硝基苯装置操作工岗前工作考核试卷含答案
- 纺织面料设计师交接强化考核试卷含答案
- 微波通信机务员岗位责任制强化考核试卷含答案
- 2025-2026学年二年级上册写字课说课稿
- 2025-2026学年包饺子说课稿
- 湖南省岳阳市弘毅新华中学2025-2026学年八年级上学期期中考试物理试题(含答案)
- 2026年玻璃仪器制造行业投资策略研究报告及未来五至十年蓝海开拓与红海突围
- 档案数字化管理师岗前评审考核试卷含答案
- 电热鼓风干燥箱操作规程及安全事项培训
- 华为行政物业楼宇管理手册
- (2026秋新版)部编版道德与法治五年级上册全册教案
- 2026揭阳中职面试题及答案
- 2025年城市地下管网改造研究报告
- 2026年陕西事业编制招聘在哪里看参考题库附答案
- 2025北京国际风能大会暨展览会(CWP2025):大型长柔风电叶片新型失效模式分析与设计验证方法
- 肿瘤靶向药物治疗及护理讲课件
- 国家电网公司招聘高校毕业生应聘登记表
- 鲁科版高中化学必修第一册第1章第2单元化学中常用的物理量-物质的量课件
评论
0/150
提交评论