我有一個place.file文本文件;使用批量插入將文本文件插入Oracle
place.file
- 新罕布什爾
- 新澤西
- 新墨西哥州
- 內華達
- 紐約
- 俄亥俄州
- 俄克拉荷馬 ....
在該文件中有4000個地名。我將在oracle和place.file中匹配我的my_place表。所以我想將place.file插入到Oracle中。也許我應該使用批量插入,我怎麼做批量插入?
我有一個place.file文本文件;使用批量插入將文本文件插入Oracle
place.file
在該文件中有4000個地名。我將在oracle和place.file中匹配我的my_place表。所以我想將place.file插入到Oracle中。也許我應該使用批量插入,我怎麼做批量插入?
沒有提及Oracle版本。 (爲了獲得最佳答案,總是包括Oracle版本,Oracle版本,操作系統和操作系統版本。)
但是,您應該爲此使用外部表進行調查。一旦你的設置正確,你可以這樣做:
insert into db_table select ... from external_table;
或者,您可以使用APPEND
暗示的INSERT
聲明,使用直接負載。 另外,您可以選擇將要加載數據的表上的NOLOGGING
屬性設置爲最佳性能。但是,在啓用NOLOGGING
之前,請考慮恢復影響。
希望幫助,
馬克
Oracle版本是10.06 Os Windows7。 – user951487
可以從Oracle使用SQL裝載機。
的語法是:
SQLLDR * connection_string *控制= * control_file.ctl *
控制文件包含:
LOAD DATA
INFILE names.file
INTO TABLE <table_name>
FIELDS TERMINATED BY <delimiter>
OPTIONALLY ENCLOSED BY <enclosing character>
(<column_name>[, <column_name>, <column_name>])
我也會使用SQL Loader。但是,他的BULK插入不同,我想這兩個答案都是。雖然在這種情況下,它將會是批量插入,速度會變慢。 ;) – Guru
4000的地方是一個很溫和的量數據。我沒有看到沒有必要使用批量插入或類似的東西。只需使用常規插入。 – Codo
@Codo Infact我想學習使用批量插入。也許我給了一個簡單的例子。 – user951487