DB2基本知识.ppt

合集下载

1、DB2基础知识(一)

1、DB2基础知识(一)
DB2 开发交流
DB2 基础知识(一)
1
内容提要
一、DB2概览 二、DB2的访问
三、DB2数据库对象
2
一、DB2概览
1.1 DB2是什么 1.2 DB2的版本
1.3 DB2平台支持
3
一、DB2概览
1.1 DB2是什么
IBM公司研制的关系型数据库系统
1969年IMS层次数据库诞生,为IBM第一代数据库也叫DB1。 1983年IBM发布Database2(DB2)for MVS,第二代数据库诞生。
6
二、DB2的访问
2.1 DB2的登录 2.2 SQL语句的运行 2.3 SQLSTATE & SQLCODE
7
二、DB2的访问
2.1 DB2的登录
远程登录到DB2服务器 通过本地客户端链接DB2服务器 节点目录、系统数据库目录和本地数据库目录间关系
8
二、DB2的访问
2.1 DB2的登录
27
三、DB2数据对象
表设计考虑
分区键选择
28
三、DB2数据对象
分区键选择
案例: CREATE TABLE TABLE_SAM(…) DISTRIBUTE BY HASH ( ...); 旧语法:partitioning key(…)
29
三、DB2数据对象
视图
视图是什么?

32
三、DB2数据对象
索引
索引是什么?

索引是表中一列或多列的键值的有序列表
为什么要使用索引?
• •
确保一列或多列中值的唯一性。 提高对表进行查询的性能。
33
三、DB2数据对象

DB2培训文档.pptx

DB2培训文档.pptx
RETURN v_return_code; END gen
© 2006 IBM公司
IBM 软件部 | DB2 信息管理软件
调用者过程find_emp通过 get diagnostics取得被调用 者的返回值,get diagnostics 必须是紧跟在call语句之后
TIP:通过返回值判断 执行状态回结果集
存储过程中的结果集可以返回给别的存储过程,也可以返回 到客户端的应用程序。
定义游标的语法如下: declare <cursor-name> cursor [with hold] with return to caller [client] for <select statement> [stmt name]
IF ( v_total >= v_min ) THEN
SET p_bonus = 'Y'; ELSE
SET p_bonus = 'N'; END IF; END bn
© 2006 IBM公司
IBM 软件部 | DB2 信息管理软件
✓传递参数
在存储过程嵌套调用过程中,参数依照出现的次序进行传递,如果数据类型不匹 配,请使用cast函数进行数据类型转换;
ELSEIF ( v_rc = 1000 ) THEN
SET p_output = 'The employee does not exist!';
ELSE
SET p_output = 'Something else went wrong.';
END IF;
END fe
--(1) --(2)
© 2006 IBM公司
© 2006 IBM公司

db2培训资料

db2培训资料

第一章DB2 UDB 概况1.1、DB2 UDB 的产品家族UDB(Universal Database )的前身为 DB2 ,是 IBM 公司开发的关系型数据库管理系统。

从其诞生之日开始,DB2 就定位于要为各种规模的企业提供稳定、高效的数据管理支持。

可以说,DB2 是当前适用范围最广泛的数据库产品。

我们对 DB2 产品的划分通常分为两种方法:一种方法是按其所能支持的硬件和操作系统平台进行划分,另一种方法是按其所能支持的用户规模的不同进行划分。

DB2 产品几乎覆盖了当前所有流行的硬件和操作系统平台。

在大型机操作系统上,有 DB2 for OS/390 、 DB2 for MVS/ESA 、DB2 for VSE 和 DB2 for VM 等多种产品;在由 IBM 公司设计的小型机 AS/400 上, DB2 已经嵌入在操作系统 OS/400 之中,成为其不可分割的一部分。

DB2 对 UNIX 操作系统的支持同样十分广泛,可以在 AIX 、 HP-UX 、 Solaris、 SCO-UNIX 、SINIX 等多种系统上找到其相应的版本。

另外,在 PC 操作系统上,DB2可以对 Window 9x、Windows NT以及OS/2等多种操作系统提供支持。

UDB 6.1 还增加了对 Linux 操作系统的支持。

以上我们所提到的只是 DB2 服务器所能运行的平台,DB2 的客户端所能支持的平台更为广泛,除了以上提到的所有平台之外,DB2 的客户端还能运行在 Dos、 Windows 3.x、 Mac OS 以及 SGI 公司的 IRIS 系统之上。

UDB 产品除了能够对各种硬件和操作系统平台进行支持之外,为了适应不同用户群的需要,UDB 提供了不同级别的产品,对小到个人用户,大到跨国企业的不同需求提供支持。

以下是对 UDB 6.1 版本不同级别产品的特点介绍:UDB 卫星版:是专门为移动用户设计的小型数据库产品。

《DB2数据库指南》幻灯片

《DB2数据库指南》幻灯片
ChinaSoft International 中软国际
第五章 数据库对象
➢ 表空间:是数据库以及存储在该数据库表之间的逻辑层。表空 间在数据库中创立,表在表空间中创立。默认创立在 userspace1的表空间内。
➢ 视图:试图是一个虚拟表,由一个或多个表或视图中派生出来 的,检索数据的时候可以与表交替使用。通过视图对数据做出修 改,那么相对应的表的数据也会被修改。
➢ DB2数据效劳:其中包括管理效劳、平安效劳、检索效劳、可 扩展性效劳、可用性效劳、性能优化效劳、存储模型效劳。
➢ DB2驱动:IBM Driver For JDBC、IBM Driver For ODBC
ChinaSoft International 中软国际
第二章 DB2入门
➢ DB2 产品安装:可以多个副本并存,如DB2 V8 和DB2 V9两
without prompting
❖ 联机数据库备份,可以备份整个数据库或者单个表空间。

backup db sample tablespace (userspace1) online to /dev/rmt0
ቤተ መጻሕፍቲ ባይዱwithout prompting

要执行联机备份,确保数据库参数 logretain = on 或 设置了
ChinaSoft International 中软国际
第一章 产品概述
➢ DB2能力:DB2 具有存储各种类型电子化信息的能力。其中包 括传统的关系型数据,包括使用XML格式编码的数据以及构造 化和非构造化的二进制信息,比方用多种语言记录的文档和文 本信息、图形、图像、多媒体信息等等。
➢ DB2 运行:DB2数据库效劳器可以在多种操作系统平台上运行 ,如Windows、Linux(可以在所有的IBM硬件系统下运行)、 HP-UX等等以及一些基于J2ME平台的系统。

DB2-培训内容

DB2-培训内容

2024/9/22
8
DB2 旳总体构造
2024/9/22
9
DB2 旳总体构造
DB2 Environment
DB2 Instance
DB2 DataBase
DB2 DataBase
DB2 Instance
DB2 DataBase
DB2 Environment (db2set)
DB2 Instance (db2i…)
DB2 培训内容纲要
DB2简介
DB2 产品简介 DB2 旳总体构造 DB2 连接
DB2 SQL
数据库对象操作(DDL+) 数据操作(DML) 高级SQL
DB2 管理
数据存储 系统维护 监控和优化
附录
2024/9/22
1
DB2 产品简介
2024/9/22
2
DB2 产品简介
2024/9/22
2024/9/22
19
DB2 SQL
RETRIEVING DATA(查询)
Retrieving the Entire Table Projecting Columns from a Table Changing the Order of the Columns Restricting Rows from a Table Limiting Result Table Size Selecting Columns from Multiple Tables Using Correlation Names DB2 Functions(Row、Column) Subquery(子查询)
DB2 DataBase(db)
2024/9/22
10
DB2 连接
2024/9/22

db2数据库基础知识

db2数据库基础知识

db2数据库基础知识1,db2数据库特点(1)具有很好的并⾏性(DB2把数据库管理扩充到了并⾏的,多节点的环境;数据库分区是数据库的⼀部分,包含⾃⼰的数据,索引,配置⽂件和事务⽇志;数据库分区有时被称为节点)。

(2)获得最⾼认证级别的ISO标准认证。

(3)性能较⾼,适⽤于数据仓库和在线事物处理。

(4)跨平台,多层结构,⽀持ODBC,JDBC等客户。

(5)操作简单,同时提供GUI和命令⾏,在windowsNT和unix下的操作相同。

(6)在巨型企业得到⼴泛的运⽤,向下兼容性好,风险⼩。

(7)能够在所有主流平台上运⾏,最适于海量数据处理。

2,db2数据库的特性(1)完全Web使能的:可以利⽤HTTP来发送询问给服务器。

(2)⾼度可缩放和可靠:⾼负荷时可利⽤多处理器和⼤内存,可以跨服务器地分布数据库和数据负荷;能够以最⼩的数据丢失快速地恢复,提供多种备份策略。

3,实现储存过程存储过程是存储在数据库中的⼀个预编译对象。

这意味着过程是预编译的,可提供给各种应⽤执⾏。

发送查询到服务器、分析和编译过程再不需要花费时间。

(1)特点:存储过程是SQL语句和控制流语句的⼀个集合或批量,它在⼀个名称下存储,按独⽴单元⽅式执⾏。

它能帮助提⾼查询的性能。

(2)好处:提⾼性能(应⽤不必重复地编译此过程)减轻⽹络拥塞(为进⾏处理,应⽤不需要向服务器提交多个SQL语句)⼀致性较好(由于过程作为单⼀控制点,在过程中定义的编码逻辑和SQL语句在所有应⽤中被⼀致地实现)改善安全机制(⽤户可以被授予许可权来执⾏存储过程,尽管他们并不拥有这个过程)(3)执⾏存储过程语句:call proc_name(param,…)(4)RETURN关键字:允许存储过程把整型值返回给调⽤者。

如果没有指定值,那么存储过程返回缺省值0或1,这依赖于存储过程的成功执⾏与否。

RETURN value(5)嵌套过程:可以执⾏或调⽤来⾃另⼀个过程的过程。

4,触发器触发器:⼀个触发器是由SQL语句集组成的代码块,在响应某些动作时激活该语句集。

DB2基础知识60页PPT

DB2基础知识60页PPT

InInddexexSSppacaece IndexSpace
■ TABLESPACE
存放一个或多个TABLE内容的一个或多个DATA SET,对应具体的 VSAM文件,指定DATABASE和STORAGE GROUP,TS由大小相同 的PAGE组成,缺省值为4K
TABLESPACE
TaTbalbele Table
当一个table被drop后,它 之前所占的空间会立即释 放
Segmented Tablespace
■ Patitioned TableSpace
一个Partitioned Table
Space只包含一个表
page page
(partitioned table)
根据INDEX的范围将表 的存储空间划分成几个
DATABASE : 逻辑数据库定义
TABLESPACES : 定义数据库表的物理存放
STORAGE GROUP : 定义物理卷空间分配
TABLE :
关系数据库的基本表
INDEX :
建立在TABLE上的索引
VIEW :
视图,建立在TABLELeabharlann 的虚表■ DataBase
一系列DB2数据库的组织和结构称为DATABASE;是tables 和相关indexes的最终集合,也是用于存放所有
TABLESPACE,INDEX SPACE的区间名称
DATABASE
TABLESPACE
INDEXSPACE
TABLE
INDEX
■ STOGROUP
STORAGE GROUP
一组VOLUME的集合, 在定义TABLESPACE和 INDEXSPACE时指定
STOGROUP

DB2开发培训

DB2开发培训

整理ppt
8
➢ 流程控制介绍
CASE statement IF statement LOOP statement WHILE statement GOTO statement ITERATE statement FOR statement
(详见备注)
二、数据库开发
整理ppt
9
二、数据库开发
➢ 游标介绍
2)用户自定义的存储过程通过CREATE PROCEDURE语句被注册到DB2数据 库的SYSCAT.ROUTINES表
整理ppt
6
二、数据库开发
➢ 存储过程实例
CREATE PROCEDURE ODS.PROC1 ( IN v_p1 INT, INOUT v_p2 INT, OUT v_p3 INT)
P1: BEGIN SET v_p2 = v_p2 + v_p1; SET v_p3 = v_p1;
END P1 输入输出参数说明:
in:输入参数 out:表示输出参数,即显示结果 in out:就是输入输出参数,运行前输入,运行后输出
整理ppt
7
二、数据库开发
➢ 存储过程变量
DECLARE var_name <data type> [ DEFAULT value]; SET <var_name> = <new_value>;
定义方式二: DECLARE GLOBAL TEMPORARY TABLE session.emp AS
( SELECT * FROM staff WHERE <condition> ) DEFINITION ONLY WITH REPLACE;
整理ppt

《db2基础操作手册》PPT课件

《db2基础操作手册》PPT课件

Y
Pred1和Pred2都是可索引的,指相同索引的列
N
除了(c1=a or c1=b)外,他可以被认为是c1 in(a,b)
Not Pred1
N
或者任何的等价形式:Not between,Not in,Not like等等。
28
29 数据约束
数据库中数据的完整性或有效性极其重要。确保插入数据库的数据的有效性非常困难 ,DB2 提供了定义某些可并入数据库的基于规则的约束或检查的能力。在 DB2 中,可 使用以下检查来最小化将错误数据插入表中的风险:
设置 Db2 update dbm cfg using param value Db2 update db cfg for db_name using param value
11
12 连接到数据库
服务器端配置
设置db2 profile registry的参数DB2COMM,如: Db2set db2comm=tcpip
null],..)
• 根据已有的表创建新表:
A:create table tab_new like tab_old B:create table tab_new as select col1,col2… from tab_old definition only
24
25
表空间
三种表空间
常规表空间 长表空间 临时表空间
8
9 Db2 profile registries
可以设置不同的级别
Instance/global/user/
instance node/instance profile
使用db2set命令,可以显示,修改,删除
db2set –all显示所有设置的

DB2的基础学习

DB2的基础学习

DB2的基础学习1、DB2数据库的逻辑结构分别为:实例-->数据库-->表空间-->表。

表是⼆维结构,由⾏和列组成,表数据存放在表空间⾥,表空间是数据库的逻辑存储层,每个数据库可以包含多个表空间,每个表空间只能归属于⼀个数据库,所以数据库和表空间的关系是⼀对多。

2、DB2的存储模型为:表空间---->容器---->extent------>page。

每个表空间由⼀个或多个容器组成,容器是映射到物理存储,容器可以是⽬录、⽂件、裸设备。

每个容器只能属于⼀个表空间。

DB2将表和索引存储在PAGE页⾥,page是db2中最⼩的物理分配单元,表中的每⾏数据只能包含在⼀页中,不能跨页。

DB2⽀持的页⼤⼩分为:4K、8K、16K、32K四种。

当DB2在读取数据的时候,不是按页读取,⽽是按照extent(块)读取,⼀个extent是由⼀组连续的页组成。

如果⼀个表空间有多个容器,为了数据均衡的分布,所以在写数据的时候,按照循环的⽅式在各个容器⾥写数据,当⼀个容器中写满⼀个extent的时候,将开始在第⼆个容器继续写extent,周⽽复始,可以提⾼读写的效率。

每个表空间由⼀个或多个容器组成,表空间为逻辑层次中,⽽真正的数据是存放在容器中的,容器是由多个extent组成。

3、主键的数据类型设置为不变长的,如char和varchar则建议选择⽤char.注意字段的默认长度:smallint——占⽤2个字节,表⽰的数值范围:-32768⾄+32767integer——占⽤4个字节,表⽰的数值范围:-2147483648⾄+2147483647bigint——占⽤8个字节,表⽰的数值范围:-9223372036854775808⾄+9223372036854775807decimal——占⽤的字节数与数据类型的精度相关,最⼤精度为31number,real,float这三种类型不常⽤。

varchar——占⽤N个字节,N的最⼤值为32672char——N的最⼤值为254long varchar不常⽤date——占⽤4个字节,表⽰的⽇期范围:0001-01-01⾄9999-12-31time——占⽤3个字节,表⽰的时间范围:00:00:00⾄23:59:59timestamp(N)[with time zone]——占⽤7-13个字节,N的取值范围为0-12,默认为6表⽰的数值范围:0001-01-01 00:00:00.000000 ⾄9999-12-31 23:59:59.9999994、随机抽样查询select * from table_name fetch first 10 rows only;5、如果有五张表关联,数据库⾥⾯同时参与关联的只能是两张表。

DB2培训[1]

DB2培训[1]
DB2培训
PPT文档演模板
2020/10/30
DB2培训[1]
DB2 逻辑组成图
PPT文档演模板
DB2培训[1]
DB2 数据库由一组对象组成
包含许多下面列出的物理和逻辑对象:
– 表、视图、索引和模式 – 锁、触发器、存储过程和包 – 缓冲池、日志文件和表空间
在以上对象中,有些(如表或视图)帮助确定数据是如何组 织的。
支持许多内置数据类型,也支持用户定义的数据类型
– 常量:常量指定一个值。
PPT文档演模板
DB2培训[1]
– 函数:函数是一组输入数据值和一组结果值之间的关系。数
据库函数可以是内置的,也可以是用户定义的。
– 表达式:表达式指定一个值。字符串表达式、算术表达式和
条件表达式都可以用于根据对一个或多个条件的求值指定一 个特定结果。
名称包括模式名 SMITH 以使其同其它任何在系统目 录中被命名为 STAFF 的表区分开来。 模式本身就是一个数据库对象。可以使用 CREATE SCHEMA 语句显式创建模式;也可以在创建另一个对 象时隐式创建模式。
模式有与之相关联的特权。这允许模式所有者可以控制 哪些用户有特权在模式中创建、修改和删除对象。
当成功调用 CREATE PROCEDURE (SQL) 语句(该语 句用应用程序服务器定义 SQL 过程)时,就创建了一 个 SQL 过程。SQL 过程是定义那些每当需要时就可 以调用的更复杂的查询或任务的一种便捷方式。以下 步骤将创建一个命令行处理器(command-line processor,CLP)脚本(名为 createSQLproc.db2), 该脚本将创建一个简单的 SQL 过程:
使用 WHERE 子句指定若干选择条件或搜索条件来在表

DB2基础知识(二)

DB2基础知识(二)

内部资料 注意保密
12
二、DB2的数据类型 DB2的数据类型
2.1 数值型
类型
smallint
精度
5位, 2个字节 10位, 4个字节 19位, 8个字节 31位 Decimal(p,s)
取值范围
-32,768 到 32,767
int
-2,147,483,648 到 2,147,483,647
bigint
3.1 CREATE TABLE
Check约束 create table DWA_FAT.A80_GRPTRX ( STA_MON INT not null default 200901 constraint C_STA_MON check (STA_MON between 200901 and 200912), BRN_NBR CHAR(6) not null, BBK_NBR CHAR(3), not null 主键 GRP_NBR CHAR(2) not null, constraint "P_Key_1" primary key (STA_MON, BRN_NBR, GRP_NBR) ) 表空间 in HISDTA3_TBS index in HISIDX1_TBS distribute by 表注释及字 分区键 ( 段注释 BRN_NBR ); '随机销售团队月度业绩统计 随机销售团队月度业绩统计’; comment on table DWA_FAT.A80_GRPTRX is '随机销售团队月度业绩统计 ; '数据月份 数据月份'; comment on column DWA_FAT.A80_GRPTRX.STA_MON is '数据月份'; '交易归属分行 交易归属分行'; comment on column DWA_FAT.A80_GRPTRX.BBK_NBR is '交易归属分行'; '交易归属网点 交易归属网点'; comment on column DWA_FAT.A80_GRPTRX.BRN_NBR is '交易归属网点'; '团队编号 团队编号'; comment on column DWA_FAT.A80_GRPTRX.GRP_NBR is '团队编号';

DB2入门培训讲义(ppt 48页)

DB2入门培训讲义(ppt 48页)
配置助手 控制中心 命令行工具
– 命令窗口、命令行处理器 信息中心 开发中心 健康中心
DB2 UDB中一些基本概念
实例 Instance
数据库 Database
容器 Container
表空间 Tablespace
扩展区 Extend

Table

Page
DB2安装、使用
Windows 下的安装、使用
仅安装客户端 DB2 Connect 安装服务器端 DB2 PE Server + DB2 Connect
RS/6000下的安装、使用
如RS/6000上已安装DB2,则只要在登录用户的profile中引用db2inst1的 profile或手工添加相应环境变量,即可使用DB2,前提是DBA已授权此用户 足够权限。
DB2 UDB的Create Table语句
SQL Server 的Create Table
CREATE TABLE [
database_name.[owner]. | owner. ] table_name ( { <column_definition>
| column_name AS computed_column_expression | <table_constraint> } [,...n] ) [ON {filegroup | DEFAULT} ] [TEXTIMAGE_ON {filegroup | DEFAULT} ]
模式名用作两部分对象名的第一部分。创建一个对象时,可将其分配给 特定模式。若不指定模式,则它被分配给缺省模式,缺省模式通常是创 建该对象的人员的用户 ID。名称的第二部分是对象名。例如,名为 Smith 的用户可以 有一个名为 SMITH.PAYROLL 的表。

db2 数据库 基础 知识 入门

db2 数据库 基础 知识 入门

DB2基础DB2是IBM一种分布式数据库解决方案。

说简单点:DB2就是IBM开发的一种大型关系型数据库平台.它支持多用户或应用程序在同一条SQL 语句中查询不同database甚至不同DBMS中的数据。

目前,DB2有如下一些版本:(比如DB2 for Unix,DB2 for Windows,DB2 for AS/400,DB2 for OS/390等)DB2是IBM公司开发的关系数据库管理系统,它有多种不同的版本,如:DB2工作组版(DB2Workgroup Edition)、DB2企业版(DB2 Enterprise Edition)、DB2个人版(DB2 Personal Edition)和DB2企业扩展版(DB2 Enterprise-Exended Edition)等,这些产品基本的数据管理功能是一样的,区别在于支持远程客户能力和分布式处理能力。

个人版适用于单机使用,即服务器只能由本地应用程序访问。

工作组版和企业版提供了本地和远程客户访问DB2的功能(当然远程客户要安装相应客户应用程序开发部件),企业版包括工作组版中的所有部件外再增加对主机连接的支持。

企业扩展版允许将一个大的数据库分布到同一类型的多个不同计算机上,这种分布式功能尤其适用于大型数据库的处理。

DB2可运行在OS/2、Windows NT、UNIX操作系统上,通常将运行在这些平台上的DB2产品统称为DB2通用数据库,这主要是强调这些产品运行环境类似,并共享相同的源代码。

DB2通用数据库主要组件包括数据库引擎(Dalabase Engine )应用程序接口和一组工具。

数据库引擎提供了关系数据库管理系统的基本功能,如管理数据、控制数据的访问(包括并发控制)、保证数据完整性及数据安全。

所有数据访问都通过SQL接口进行。

db2起源于system r和system r*。

他支持从pc到unix,从中小型机到大型机;从ibm到非ibm(hp及sun unix系统等)各种操作平台。

DB2基本知识

DB2基本知识
使用“游标”(Cursors)来完成对记录 的处理。使用的语句包括:
DECLARE -声明一个游标
OPEN
-打开游标
FETCH
-读取游标中的一条记录
CLOSE CURSOR -关闭游标
14 2020/2/12
游标(CURSOR)使用例程
DEFINE A CURSOR
----- Definition
EXEC SQL FETCH K9 INTO :EMPNO,:NAME END-EXEC.
CLOSE CURSOR when finished
EXEC SQL CLOSE K9 END-EXEC.
注意:游标操作在open时才对数据库中的table进行选择处 理。
15 2020/2/12
SQLCA-SQL Communication Area
在使用可能定义为 NULL 的域时,应当使用指针变量 来判断值域是否是 null 值,如下例: SELECT COLA INTO :A:AIND 其中,AIND 定义为指针变量 s9(4) comp。 如果该值域为null , 返回的指针变量值将小于零。
13 2020/2/12
Cursors
在查询数据库可能返回多条数据记录时,
Bind:
– 使用数据库的catalog信息 , 检测错误(资源 的授权、DB2的关系数据库规则);
– 对每一个SQL语句采取相应的调用策略(资 源锁、索引的使用);
– 将访问策略存储为plan(或是一个package); – Plan 由集成的一系列DBRMs组成。
9 2020/2/12
应用程序的编译以及运行过程
//
UNIT=3390,VOL=SER=NGDAT1,SPACE=(CYL,(1,1))

DB2基础培训ppt课件

DB2基础培训ppt课件

.
创建DMS示例
WINDOWS:
CREATE TABLESPACE sms MANAGED BY DATABASE USING (FILE 'C:\DMS\DATA.1' 1000,DEVICE ‘\\.\F:' 3000) EXTENTSIZE 16 PREFETCHSIZE 32
定义容器
表示创建数据库管理表空间
管理方便程度
性能
Yes
操作系统
SMS
需要时动态增长
管理方便 .很少需要人工管理 . 容器大小可随文件系统增大
很好
DMS
Yes
DB2
预分配
较好 . 需要人工指定一些参数(e.g.. EXTENTSIZE PREFETCHSIZE) . 可通过增加容器建立大容量的表空间
最优 . 采用裸设备容器性能可提升5-10% .单表中的索引,数据,大对象可跨表 空间存放
14
ONLINE ARCHIVE Contains information for committed and externalized transactions. Stored in the ACTIVE
log subdirect.ory.
15
16
UDB数据存取方法
SQL语言和UDB内置的API
.
数据库管理表空间(DMS)特性
在创建时分配空间 容器可增加(数据分配自动重新平衡) 容器大小可修改 数据分配自动重新平衡 空间大小只限于物理存储特性 文件容器使用文件系统的IO 裸设备使用直接操作硬件,不通过文件系统 很高的性能 (特别对于 OLTP系统) 数据分配灵活
.
SMS与DMS对比
RAD Striping 对象管理 空间分配

《DB2参考资料》第01章 DB2入门

《DB2参考资料》第01章 DB2入门

§1.5 DB2管理服务器(DAS)
monitor :监听、监视、监控
§1.6 DB2工具
§1.6 DB2工具
第一步
创建和使用样本数据库
命令中心
执行DB2命令,编写脚本
命令行处理器
命令窗口
控制中心
集中管理数据库及数据库对象
任务中心
日志中心
配置助手
连接远程DB2服务器
健康中心
数据库监视
第一步 “第一步”为用户介绍了可以使用DB2数据库系统来执 行的一些主要数据库功能。
个人版(DB2 Personal Edition) · 个人单机使用,提供功能完整的数据库 · 提供了数据库存储设施并能够连接到远程DB2服务器,但不能响
应 远程请求
EveryPlace · 专为移动办公用户设计的微型数据库系统 · 用于PDA,HPC和嵌入式设备
1.3 DB2的安装
启动安装过程后,进入安装产品界面。单击界面左边的【安装产品】 选项后,再单击界面右边的【安装新产品】按钮,启动安装向导界面。
§1.6 GUI和CLP - 控制中心
·Add / Delete DB2 System ·Configure Instance and Database ·Manage Database Objects ·Manage Database Data ·Perform Database Backup and Restore ·Manage Database Connection ·Manage Database Replication ·……
命D命b令2令=行>处行! C理o器m处m(anC理domm器and(LineCProoc执mess行mor系a,统nCL命dP)令L允i许n用e户输P入r和o执c行eSsQsL命o令r、,XQCueLry命P令)、D允B2命许令和用操作户系统命令。
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Action 可以为 GO TO :Lable 或者是 CONTINUE.
17 2020/4/30
Coding Aids
DSNTIAR/DANTIR
SQL错误返回代码解释例程,在应用程序中调 用该例程以获得系统标准的错误解释。
CALL DSNTIAR
DCLGEN
根据DB2中的Table定义将表的定义描述生成 到指定的数据集中。
DATABASE : 逻辑数据库定义
TABLESPACES : 定义数据库表的物理存放
STORAGE GROUP : 定义物理卷空间分配
TABLE :
关系数据库的基本表
INDEX :
建立在TABLE上的索引
VIEW :
视图,建立在TABLE上的虚表
4 2020/4/30
TABLE/TABLE SPACES
应用程序调用 DB2 时使用的系统通讯 区,其中的返回代码域可以用来判断 SQL调用是否成功。常用的返回代码域 有: SQLCODE(INTEGER) –调用执行返回代 码(000-成功;<0-调用失败,例如:-530 New foreign key value is invalid ; >0-调用 警告,例如:+100 Row not found); SQLSTATE –调用返回代码详细说明。
INDEX1
INDEX2.etc.
VIEW1
VIEW2
VIEW3.etc
STORAGE GROUP1 VOLUME1 VOLUME2
STORAGE GROUP2 VOLUME3
3 2020/4/30
DB2 Objects 概述
CATALOG : DB系统定义信息
DIRECTORY : DB系统管理信息
//SYSUDUMP DD SYSOUT=*
//SYSIN DD *
MERGECOPY TABLESPACE NASEDB.NSPATEL COPYDDN(SYSCOPY1)
NEWCOPY YES
20 2020/4/30
在DB2的中,PAGE是最小的存储单元, 也是I/O的基本单位,大小为4K或32K;
TABLE中的一行(ROW)必须存放在 单个PAGE中,一个PAGE中可以存放多 个行(必须是同一个TABLE);
在资源管理中,Tablespaces, table, 或 page 都可以作为资源锁的单元;
5 2020/4/30
IMS Attach
2 2020/4/30
DB2 Object
DB2 SUBSYSTEM
CATALOG DIRECTORY OTHER SYSTEM OBJECTS
DATABASE 1 TABLE SPACES1
DATABASE2.etc. TABLE SPACES2
TABLE1
TABLE2. etc.
19 2020/4/30
DB2 online utility –MERGECOPY
MERGECOPY -建立(或合并)数据的完全拷贝(full image copies )或增量拷贝(incremental image copies);
//STEP1 EXEC DSNUPROC,PARM=‘FJDB,CPY1',COND=(4,LT),REGION=0M
//
UNIT=3390,VOL=SER=NGDAT1,SPACE=(CYL,(1,1))
//SYSPRINT DD SYSOUT=*
//SYSUDUMP DD SYSOUT=*
//SYSIN DD *
COPY TABLESPACE NASEDB.NSPATEL COPYDDN SYSCOPY1
FULL NO SHRLEVEL REFERENCE
主机变量(Host variables)
嵌入式语言中定义的变量,在SQL语句中可以使用,如 下例: EXEC SQL UPDATE TMPTABLE SET Salary = Salary * :PERCENT WHERE Jobcode = :JCODE END-EXEC. 使用时在变量前必须使用冒号(:)来标示主机变量。
6 2020/4/30
DB2 数据库的基本建立过程
建立存储组 ( Storage Group); 建立逻辑数据库 (DataBase); 定义表空间 (Tablespace); 建立表 (Table); 在表的基础上建立索引 (Index) ; 装载、处理数据 (LOAD/INSERT);
➢ UPDATE
SELECT
➢ DELETE
INSERT
DCL(Data Control Language):资源控制管理
➢ GRANT
REVOKE
8 2020/4/30
SQL 程序的预编译
DB2 的预编译(Pre-compile):
- 将SQL语句与非SQL语句分离; - 建立数据库访问模块(DBRM); - 检测语法错误;
使用“游标”(Cursors)来完成对记录 的处理。使用的语句包括:
DECLARE -声明一个游标
OPEN
-打开游标
FETCH
-读取游标中的一条记录
CLOSE CURSOR -关闭游标
14 2020/4/30
游标(CURSOR)使用例程
DEFINE A CURSOR
----- Definition
//
REGION=6500K,CLASS=A,MSGCLASS=X,MSGLEVEL=(1,1)
//STEP1 EXEC DSNUPROC,PARM='FJDB,COPY',COND=(4,LT),REGION=1024K
//DSNTRACE DD SYSOUT=*
//SYSCOPY1 DD DSN=DBA1.IMAGCOPY.INC1.NSPATEL, DISP=(NEW,CATLG),
EXEC SQL
DECLARE K9 CURSOR FOR
SELECT EMPNO,LASTNAME
FROM TEMP1
WHERE DEPNO = :DPT
END-EXEC.
OPEN the CURSOR
---- Execution
EXEC SQL OPEN K9 END-EXEC.
FETCH RESULT ROWS ONE AT A TIME
EXEC SQL FETCH K9 INTO :EMPNO,:NAME END-EXEC.
CLOSE CURSOR when finished
EXEC SQL CLOSE K9 END-EXEC.
注意:游标操作在open时才对数据库中的table进行选择处 理。
15 2020/4/30
SQLCA-SQL Communication Area
//DSNTRACE DD SYSOUT=*
//SYSCOPY1 DD DSN=NASE.MERGCOPY.NSPATEL.NO3,
//
DISP=(NEW,CATLG),
//
UNIT=3390,SPACE=(TRK,(3,1)),
//
VOL=SER=DB2VOL
//SYSPRINT DD SYSOUT=*
DB2/OS390
➢DB2 系统介绍 ➢DB2 编程 ➢DB2 的常用UTILITY
1 2020/4/30
DB2 系统架构示意
在OS/390系统中,DB2作为独立的数据库 应用系统,通过与其他应用间的接口 (ATTCHMENT)进行数据交换。
CICS Attach
DB2
TSO
Attach
OS/390
VALIDATE(BIND) ISOLATION(CS) EXPLAIN(YES) QUALIFIER(NASE001) OWNER(IBMUSER)
END
11 2020/4/30
DB2 的 SQL 编程
基本 SQL 语句:
SELECT
SELECT16 2020/4/30
Coding Aids
Whenever statement
用来处理可能出现的例外状况,在程序中一 旦定义全程使用。
EXEC SQL WHENEVER condition action END-EXEC.
Condition 包括: SQLERROR– SQLCODE 小于零; SQLWARNING – SQLCODE 大于零; NOT FOUND – SQLCODE = 100;
Source Program ..
EXEC SQL …
Language Interface
DB2 Pre-Compile
Source
DBRM SQL
STMNTS
DB2 CATALOG Table/Column Description Authorization SYSDBRM
Compile and Linkedit
Bind:
– 使用数据库的catalog信息 , 检测错误(资源 的授权、DB2的关系数据库规则);
– 对每一个SQL语句采取相应的调用策略(资 源锁、索引的使用);
– 将访问策略存储为plan(或是一个package); – Plan 由集成的一系列DBRMs组成。
9 2020/4/30
应用程序的编译以及运行过程
10 2020/4/30
BIND PACKAGE
//PH02CS04 EXEC PGM=IKJEFT01,DYNAMNBR=20,COND=(4,LT) //DBRMLIB DD DSN=VGUSR.MVSCICS.DBRMLIB,DISP=SHR //SYSPRINT DD SYSOUT=* //SYSOUT DD SYSOUT=* //REPORT DD SYSOUT=* //SYSIN DD DUMMY //SYSTSIN DD * DSN SYSTEM(DSN1) BIND PACKAGE(NASE001) MEMBER(NAH2020) ACT(REP) -
相关文档
最新文档