首頁>Club>
5
回覆列表
  • 1 # 股份安慰GRE

    sql*loader是一個程式,用來把文字檔案裡面的資料,匯入到Oracle資料庫裡面。

    下面是一個簡單的例子:

    SQL*Loader

    首先需要一個控制檔案test_main.ctl,內容如下:

    LOADDATA

    INFILE*

    INTOTABLEtest_main

    FIELDSTERMINATEDBY","

    (ID,VALUE)

    BEGINDATA

    1,Test

    其中,

    第一行LOADDATA意思是告訴SQL*Loader,要幹啥?這裡是載入資料。

    第二行INFILE*意思是資料從哪裡來?這裡是包含在控制檔案中。

    第三行INTOTABLE意思是資料要導到哪裡?這裡是要到test_main表。

    第四行FIELDSTERMINATEDBY意思是資料之間用什麼符號分隔?這裡是用逗號分隔。

    第五行是資料要按什麼順序寫到列裡面

    第六行BEGINDATA是告訴SQL*Loader,後面的都是資料了。

    然後開始執行sqlldr程式

    D:\temp>sqlldruserid=test/test123control=test_main.ctl

    SQL*Loader:Release10.2.0.1.0-Productionon星期日3月1314:58:222011

    Copyright(c)1982,2005,Oracle.Allrightsreserved.

    SQL*Loader-601:對於INSERT選項,表必須為空。表TEST_MAIN上出錯

    在SQLPlus中,

    SQL>truncatetabletest_main;

    表被截斷。

    以後,再次測試執行

    D:\temp>sqlldruserid=test/test123control=test_main.ctl

    SQL*Loader:Release10.2.0.1.0-Productionon星期日3月1314:58:562011

    Copyright(c)1982,2005,Oracle.Allrightsreserved.

    達到提交點-邏輯記錄計數1

  • 中秋節和大豐收的關聯?
  • 冒險島的豬(坐騎)在那裡捉的啊?