SQLLoader工具的使用

2021-06-03 22:50:01 字數 2604 閱讀 7935

實習十 sqlloader工具的使用

實驗目的:學習通過sqlloader工具把外部資料匯入到oracle資料庫中。

一、sql*loader涉及的檔案

控制檔案control file:匯入資料規則

日誌檔案log file:匯入資料記錄

壞檔案bad file:插入記錄出錯,如違反唯一約束,非空約束...

卡片檔案discard file:沒有被選擇的記錄

二、裝載方式:直接路徑和常規路徑的區別

直接路徑:根據控制檔案轉換資料為指定的陣列,格式化為oracle資料塊,將資料塊直接寫入資料庫。

並行直接路徑:多個例項直接路徑裝入資料。

常規路徑:根據控制檔案轉換資料為指定的陣列。使用insert語句執行陣列插入。

三、常規路徑裝入(預設方式)

使用insert語句和使用陣列緩衝插入資料到資料庫表中。這種方法被所有的oracle工具和應用程式使用。使用常規路徑裝入資料,和所有其它程序爭奪緩衝資源。由於建立sql語句、執行sql語句,使得裝入顯著變慢。如果速度對你特別重要,應該使用直接路徑裝入。但下面情況無法直接裝入,必須用常規路徑裝入:

1、裝入時同時訪問被索引的表或者同時插入、更新沒被索引

的表。因為直接路徑裝入(除並行裝載),sql*loader對錶必須有排它的寫訪問和對索引有排它的讀寫訪問。

2、通過sql*net訪問不同的平台。不能用直接路徑裝入,除非使用相同的計算機和字符集。

3、裝入資料到聚族表中。直接路徑裝載不支援聚族表。

4、當裝相對少的記錄到有索引的大表中。在直接路徑裝載下

需要拷貝索引,然後和合併新的索引。

5、當裝相對少的行到乙個有參考和列檢查完整性約束。在直

接路徑裝載下,約束被禁用。

6、想應用sql函式到指定的字段中。

四、直接路徑裝入

何時使用直接路徑裝入:

1、大量資料需要快速裝入。

2、想使用並行裝入。

3、當前會話不支援你要裝入資料的字符集,或者字符集轉換 將出現錯誤。 

五、使用sqlloader匯入資料

例:

方法一:

1、編輯乙個檔案load.ctl(假設存放在d:\oracle\doc下):

load data

infile *

fields terminated by ' ,' optionally enclosed by '"'

(dept_id,department,abbreviation)

begindata

1, 農學院, 農學

2, 園藝系, 園藝

3, 林學院, 林學

4, 草業科學系, 草業

5, 動物科學系, 動科

6, 動物醫學學院, 動醫

7, 機械交通學院, 機交

8, 水利與土木工程學院, 水利

9, 經濟**學院, 經貿

10, 食品科學系, 食科

11, 計算機及資訊工程系, 計算機

12, 環境系, 環境

13, 外語系, 外語

14, 人文社會科學學院, 人文

15, 高職學院, 高職

16, 語言部, 語言部

2、匯入資料:

c:\sqlldr userid=user1/user1@ora1  control=d:\oracle\doc\load.ctl   log=d:\oracle\doc\load.log

方法二:

1、編輯乙個資料檔案load.dat(假設存放在d:\oracle\doc下),

其中存放的是要匯入的資料:

1, 農學院, 農學

2, 園藝系, 園藝

3, 林學院, 林學

4, 草業科學系, 草業

5, 動物科學系, 動科

6, 動物醫學學院, 動醫

7, 機械交通學院, 機交

8, 水利與土木工程學院, 水利

9, 經濟**學院, 經貿

10, 食品科學系, 食科

11, 計算機及資訊工程系, 計算機

12, 環境系, 環境

13, 外語系, 外語

14, 人文社會科學學院, 人文

15, 高職學院, 高職

16, 語言部, 語言部   

2、編輯乙個檔案load1.ctl(假設存放在d:\oracle\doc下):

load data

infile 'd:\oracle\doc\load.dat'

into table department

fields terminated by ' ,' optionally enclosed by '"'

(dept_id,department,abbreviation)

3、匯入資料:

c:\sqlldr userid=user1/user1@ora1 control=d:\

oracle\doc\load1.ctl  log=d:\oracle\doc\load1.log

Sql Loader的簡單使用

之前總結的關於sql loader的用法,今天又用到,又翻出來看看 sql loader 可將外部檔案中的資料載入到 oracle db 的表中。它具有乙個功能強大的資料分析引擎,因此對資料檔案中資料的格式沒有什麼限制。sql loader 使用以下檔案 後面三個可以不選 操作步驟如下 1 建立資料...

SQLLoader使用簡介

sqlloader 命令介紹 1.sqlloader 是oracle 資料庫管理軟體的乙個資料匯入工具。安裝oracle 時請確認它是否被安裝 2 sqlloader 的命令sqlldr 這個可執行檔案在 oracle home bin下。3 sqlldr 的主要命令引數介紹 userid 指定使用...

使用SQL LOADER匯入資料

oracle的sql loader是乙個專門用於oracle導資料的工具。不過,好多dba習慣用toad匯入資料,toad這個工具。但是我覺得sql loader也不錯,特別是在批量的時候。對於初學者,我想宣告一點的是,關於那個.ctl檔案。我起初以為.ctl檔案是oracle自己的控制檔案。結果搞...