WEB开发网
开发学院数据库DB2 DB2 LOAD 工具使用技巧集合 阅读

DB2 LOAD 工具使用技巧集合

 2010-04-15 00:00:00 来源:WEB开发网   
核心提示: LOAD 工具在加载数据的时候,输入的数据除了可以是 ixf、asc 和 del 类型的文件之外,DB2 LOAD 工具使用技巧集合(3),还可以是游标(curosr),如果需要将一个表中的数据保存到另外一张表中,且在数据加载的过程中会自动的完成代码页的转换,如果在执行代码页转换的工程中造成数据

LOAD 工具在加载数据的时候,输入的数据除了可以是 ixf、asc 和 del 类型的文件之外,还可以是游标(curosr)。如果需要将一个表中的数据保存到另外一张表中,且对应的列的类型是一致的,那么我们就可以使用游标的方式来实现数据的移动。游标方式之所以能提高数据加载的效率是因为数据不需要以文件的方式保存到磁盘上,而是直接从源数据表到达目标数据表中,这样就可以节省了两次 I/O 过程(导出的数据以文件保存到磁盘的过程和加载数据时从磁盘上读取数据文件的过程),从而大大提高数据处理的效率。

示例如下:

创建 sql 文件 test.sql, 其内容如下:

清单 1. SQL 语句 —— test.sql

declare cursor mycur for select * from tab1name; 
load from mycur of cursor insert into tab2name; 

注:在游标声明中的 SQL 语句根据应用的需要自主确定其内容,load 的选项也可以根据各种需求自主确定。

在 DB2 环境下执行如下命令:

清单 2. 执行 SQL 语句

db2 connect to dbname 
db2 – tvf test.sql 

代码页的转换

在不同的数据库间移动数据经常会出现代码页不一致的情况,这就需要根据不同的情况分别处理。如果保存数据的文件是 asc 或 del 格式,那么需要使用文件修饰符:codepage,此选项指定数据的源数据库的代码页的值。

清单 3. 示例 1 —— DEL 文件

LOAD from test of del modified by codepage=819 insert into tabname 

如果保存数据的文件是 ixf 格式,那么不需要 load 工具使用任何选项,且在数据加载的过程中会自动的完成代码页的转换。如果在执行代码页转换的工程中造成数据格式的变化而导致了加载无法成功,则使用 forcein 的文件修饰符,实例如下:

上一页  1 2 3 4 5 6  下一页

Tags:DB LOAD 工具

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接