使用批量插入将文本文件插入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