[Oracle]-SQL LOAD介紹2-Loading方法

目前有四種Loading方法: INSERT、APPEND、REPLACE、TRUNCATE
INSERT:將資料load進一個空的資料表中,前提是資料表內必須沒有資料,否則SQL loader
                   將會提示error。
原文內容參考:
If the tables you are loading into are empty, use the INSERT option. It requires the table to be empty before loading. SQL*Loader terminates with an error if the table contains rows.
APPEND:不考慮資料表中是否是空的或是已存在相同的資料,換言之不論資料表中有無資
                     料,都將插入該table中,每執行1次就寫入一次。
原文內容參考:
If data already exists in the table, SQL*Loader appends the new rows to it. If data does not already exist, the new rows are simply loaded.

REPLACE:先對目標table做一個delete清空所有資料,再讀資料進table中。
◎注意使用replace會觸發該資料表的delete trigger 。
原文內容參考:
all rows in the table are deleted and the new data is loaded.

TRUNCATE:先將要load的資料表內容清空後,再將資料load進資料表中,此方法效能最
                          好,使用truncate table的原因是不會影響index運作同時也不會留下Log紀錄。
原文內容參考:
TRUNCATE statement quickly and efficiently deletes all rows from a table or cluster, to achieve the best possible performance.

留言

熱門文章