一、sqlldr的概述
sqlldr是oracle自帶的一個工具,用于導入文本文件的內容到oracle數據庫中。
該工具在:\oracle\app\oracle\product\11.2.0\server\bin\sqlldr.exe?
二、使用
D:\oracle\app\oracle\product\11.2.0\server\bin\sqlldr.exe?
userid=user/password@//192.168.1.108:1521/XE?
control="E:\test.ctrl"?
data="E:\test.csv"?
log="E:\test.log"?
bad="E:\test.csv.bad"
userid=user/password@//192.168.1.108:1521/XE?
control="E:\test.ctrl"?
data="E:\test.csv"?
log="E:\test.log"?
bad="E:\test.csv.bad"
參數解釋:
userid -- ORACLE username/password
? ? ? ?control - 控制文件
? ? ? ?log - 記錄的日志文件
? ? ? ?bad - 壞數據文件
? ? ? ?data - 數據文件
? ? ? ?discard - 丟棄的數據文件
? ? ? ?control - 控制文件
? ? ? ?log - 記錄的日志文件
? ? ? ?bad - 壞數據文件
? ? ? ?data - 數據文件
? ? ? ?discard - 丟棄的數據文件
問:怎么沒有給出要插入到哪張表的參數?
答:參數在 test.ctrl 文件中,INTO TABLETEST APPEND
OPTIONS (DIRECT=TRUE,PARALLEL=TRUE,MULTITHREADING=TRUE,ERRORS=100000000,SKIP_INDEX_MAINTENANCE=TRUE)
LOAD DATA CHARACTERSET UTF8
INTO TABLE TEST APPEND
FIELDS TERMINATED BY ','
OPTIONALLY ENCLOSED BY "'"
("CELL_ID" NULLIF ("CELL_ID"= 'null'),"SITE_NAME" CHAR(4000) NULLIF ("SITE_NAME"= 'null'),"AREA" CHAR(4000) NULLIF ("AREA"= 'null'),"AREA2" CHAR(4000) NULLIF ("AREA2"= 'null'),"LONGITUDE" NULLIF ("LONGITUDE"= 'null'),"LATITUDE" NULLIF ("LATITUDE"= 'null'),"CONF_TAI" NULLIF ("CONF_TAI"= 'null'),"CI" NULLIF ("CI"= 'null'),"TAU_IMSI" NULLIF ("TAU_IMSI"= 'null'),"TAU_SUM" NULLIF ("TAU_SUM"= 'null'),"TAU_PER_IMSI" NULLIF ("TAU_PER_IMSI"= 'null'),SDATE DATE "YYYY-MM-DD_HH24MISS" NULLIF (SDATE = 'null'),REPORT_ID NULLIF (REPORT_ID = 'null')
)
實戰見博客:http://blog.csdn.net/zengmingen/article/details/51497994