DB2 实用程序之LOAD的实用程序的详细介绍


  本文标签:DB2 实用程序

  此文章主要向大家讲述的是DB2 实用程序之LOAD的实用程序,我们大家都知道LOAD 实用程序主要是用于为表填充相关数据  。该实用程序将格式化的页面直接写入到数据库中  。这种机制允许比 IMPORT 实用程序更有效地移动数据  。

  

  LOAD 实用程序概述

  

  LOAD 实用程序是用于为表填充数据的另一种方法  。该DB2 实用程序将格式化的页面直接写入到数据库中  。这种机制允许比 IMPORT 实用程序更有效地移动数据  。然而,有些操作,例如参照约束或表约束检查和触发器的调用,是不能用 IMPORT 实用程序执行的  。

  下面是 LOAD 命令的核心  。其他受支持的选项和修饰符将在本节中后面几屏中介绍  。为了成功地执行这个命令,必须拥有 SYSADM/DBADM 或 LOAD 权限,或者拥有装载操作涉及的表上的 INSERT 和/或 DELETE 特权  。

  为了将数据装载到包含受保护列的表中,必须拥有允许对表中所有受保护列进行写访问的 LBAC 凭证  。为了将数据装载到受保护的行中,必须被授予允许写访问的安全标签,作为保护表的安全策略的一部分  。

  1. LOAD FROM input_source OF input_type   
  2. MESSAGES message_file   
  3. [ INSERT | REPLACE | TERMINATE | RESTART ]   
  4. INTO target_tablename  

  用于 LOAD 的源输入的格式可以是 DEL、ASC、PC/IXF 或 CURSOR  。游标是一个 SELECT 语句返回的结果集  。下面是使用 CURSOR 作为装载输入的一个例子:

  

  1. DECLARE mycursor CURSOR FOR SELECT col1, col2, col3 FROM tab1;   
  2. LOAD FROM mycursor OF CURSOR INSERT INTO newtab;  

  在开始装载DB2 实用程序之前,装载目标必须已经存在  。装载目标可以是一个表、一个类型化表或一个表的别名  。将数据装载到包含 XML 列的表、系统表和临时表是不受支持的  。

  

  使用 MESSAGES 选项可以捕获装载期间遇到的错误、警告和包含有用信息的消息  。

  LOAD 可以以四种不同的模式执行:

  INSERT 模式将输入数据添加到一个表中,而不更改已有的表数据  。

  REPLACE 模式删除表中所有已有的数据,然后用输入数据填充这个表  。

  TERMINATE 模式终止装载操作,并回滚到它开始时所在的时间点  。一个例外是,如果指定了 REPLACE 模式,那么表将被删节  。

  RESTART 模式用于重新开始之前被中断的装载命令  。它将自动从最近的一致点继续  。要使用这个模式,可以指定与前一个 LOAD 命令相同的选项,但是这一次加上 RESTART  。它使DB2 实用程序可以发现在装载处理中生成的所有需要的临时表  。

  因此,千万不要手动删除装载命令所生成的任何临时文件,除非您确信不再需要这些临时文件  。一旦装载成功完成,这些临时文件将自动被删除  。默认情况下,这些临时文件是在当前的工作目录中创建的  。也可以使用 TEMPFILES PATH 选项指定存放临时文件的目录  。