DB2 實用程序之LOAD的實用程序的詳細(xì)介紹
此文章主要向大家講述的是DB2 實用程序之LOAD的實用程序,我們大家都知道LOAD 實用程序主要是用于為表填充相關(guān)數(shù)據(jù)。該實用程序?qū)⒏袷交捻撁嬷苯訉懭氲綌?shù)據(jù)庫中。這種機制允許比 IMPORT 實用程序更有效地移動數(shù)據(jù)。
LOAD 實用程序概述
LOAD 實用程序是用于為表填充數(shù)據(jù)的另一種方法。該DB2 實用程序?qū)⒏袷交捻撁嬷苯訉懭氲綌?shù)據(jù)庫中。這種機制允許比 IMPORT 實用程序更有效地移動數(shù)據(jù)。然而,有些操作,例如參照約束或表約束檢查和觸發(fā)器的調(diào)用,是不能用 IMPORT 實用程序執(zhí)行的。
下面是 LOAD 命令的核心。其他受支持的選項和修飾符將在本節(jié)中后面幾屏中介紹。為了成功地執(zhí)行這個命令,必須擁有 SYSADM/DBADM 或 LOAD 權(quán)限,或者擁有裝載操作涉及的表上的 INSERT 和/或 DELETE 特權(quán)。
為了將數(shù)據(jù)裝載到包含受保護(hù)列的表中,必須擁有允許對表中所有受保護(hù)列進(jìn)行寫訪問的 LBAC 憑證。為了將數(shù)據(jù)裝載到受保護(hù)的行中,必須被授予允許寫訪問的安全標(biāo)簽,作為保護(hù)表的安全策略的一部分。
- LOAD FROM input_source OF input_type
- MESSAGES message_file
- [ INSERT | REPLACE | TERMINATE | RESTART ]
- INTO target_tablename
用于 LOAD 的源輸入的格式可以是 DEL、ASC、PC/IXF 或 CURSOR。游標(biāo)是一個 SELECT 語句返回的結(jié)果集。下面是使用 CURSOR 作為裝載輸入的一個例子:
- DECLARE mycursor CURSOR FOR SELECT col1, col2, col3 FROM tab1;
- LOAD FROM mycursor OF CURSOR INSERT INTO newtab;
在開始裝載DB2 實用程序之前,裝載目標(biāo)必須已經(jīng)存在。裝載目標(biāo)可以是一個表、一個類型化表或一個表的別名。將數(shù)據(jù)裝載到包含 XML 列的表、系統(tǒng)表和臨時表是不受支持的。
使用 MESSAGES 選項可以捕獲裝載期間遇到的錯誤、警告和包含有用信息的消息。
LOAD 可以以四種不同的模式執(zhí)行:
INSERT 模式將輸入數(shù)據(jù)添加到一個表中,而不更改已有的表數(shù)據(jù)。
REPLACE 模式刪除表中所有已有的數(shù)據(jù),然后用輸入數(shù)據(jù)填充這個表。
TERMINATE 模式終止裝載操作,并回滾到它開始時所在的時間點。一個例外是,如果指定了 REPLACE 模式,那么表將被刪節(jié)。
RESTART 模式用于重新開始之前被中斷的裝載命令。它將自動從最近的一致點繼續(xù)。要使用這個模式,可以指定與前一個 LOAD 命令相同的選項,但是這一次加上 RESTART。它使DB2 實用程序可以發(fā)現(xiàn)在裝載處理中生成的所有需要的臨時表。
因此,千萬不要手動刪除裝載命令所生成的任何臨時文件,除非您確信不再需要這些臨時文件。一旦裝載成功完成,這些臨時文件將自動被刪除。默認(rèn)情況下,這些臨時文件是在當(dāng)前的工作目錄中創(chuàng)建的。也可以使用 TEMPFILES PATH 選項指定存放臨時文件的目錄。
【編輯推薦】
- IBM DB2 9只毒蛇這樣“毒”的原因是什么
- DB2 9 分布式管理之維護(hù)的描述
- IBM DB2 9只毒蛇這樣“毒”的原因是什么
- DB2客戶端開發(fā)的***動向描述
- 如何避免DB2性能理解的20大誤區(qū)?