Oracle 高速批量数据加载工具sql*loader使用说明

sqlLoader(sqlLDR)是Oracle的高速批量数据加载工具。这是一个非常有用的工具,可用于多种平面文件格式向Oralce数据库中加载数据。sqlLDR可以在极短的时间内加载数量庞大的数据。它有两种操作模式。
@H_404_1@传统路径:(conventional path):sqlLDR会利用sql插入为我们加载数据。
直接路径(direct path):采用这种模式,sqlLDR不使用sql;而是直接格式化数据库块。
利用直接路径加载,你能从一个平面文件读数据,并将其直接写至格式化的数据库块,而绕过整个sql引擎和undo生成,同时还可能避开redo生成。要在一个没有任何数据的数据库中充分加载数据,最快的方法就是采用并行直接路径加载。 要使用sqlLDR,需要有一个控制文件(control file)。 控制文件中包含描述输入数据的信息(如输入数据的布局、数据类型等),另外还包含有关目标表的信息。控制文件甚至还可以包含要加载的数据。1. 新建一个控制文件demo1.ctl,内容如下:
<div class="codetitle"><a style="CURSOR: pointer" data="47831" class="copybut" id="copybut47831" onclick="doCopy('code47831')"> 代码如下:

<div class="codebody" id="code47831">
LOAD DATA
INFILE

INTO TABLE DEPT
FIELDS TERMINATED BY ','
(DEPTNO,DNAME,LOC )
BEGINDATA
10,Sales,Virginia
20,Accounting,Virginia
30,Consulting,Virginia
40,Finance,Virginia

LOAD DATA :这会告诉sqlLDR要做什么(在这个例子中,则指示要加载数据)。sqlLDR还可以执行CONTINUE_LOAD,也就是继续加载。
INFILE * :这会告诉sqlLDR所要加载的数据实际上包含在控制文件本身上,如第6~10行所示。也可以指定包含数据的另一个文件文件名。
INTO TABLE DEPT :这会告诉sqlLDR要把数据加载到哪个表中(在这个例子中,数据要加载到DEPT表中)。
FIELDS TERMINATED BY ‘,':这会告诉sqlLDR数据的形式应该是用逗号分隔的值。
(DEPTNO,LOC) :这会告诉sqlLDR所要加载的列、这些列在输入数据中的顺序以及数据类型。这是指输入流中数据的数据类型,而不是数据库中的数据类型。在这个例子中,列的数据类型默认为CHAR(255),这已经足够了。
BEGINDATA :这会告诉sqlLDR你已经完成对输入数据的描述,后面的行(第7~10行)是要加载到DEPT表的具体数据。
2. 创建一个空表dept
<div class="codetitle"><a style="CURSOR: pointer" data="39545" class="copybut" id="copybut39545" onclick="doCopy('code39545')"> 代码如下:
<div class="codebody" id="code39545">
create table dept
( deptno number(2) constraint dept_pk primary key,
dname varchar2(14),
loc varchar2(13)
)
/

3. 加载数据
<div class="codetitle"><a style="CURSOR: pointer" data="17519" class="copybut" id="copybut17519" onclick="doCopy('code17519')"> 代码如下:
<div class="codebody" id="code17519">
sqlldr userid=lwstest/netjava control=d:\demo1.ctl

加载工具批量数据

相关文章

数据库版本:11.2.0.4 RAC(1)问题现象从EM里面可以看到,在23号早上8:45~8:55时,数据库等待会话暴增...
(一)问题背景最近在对一个大约200万行数据的表查看执行计划时,发现存在异常,理论上应该返回100多万...
(一)删除备份--DELETE命令用于删除RMAN备份记录及相应的物理文件。当使用RMAN执行备份操作时,会在RM...
(1)DRA介绍 数据恢复顾问(Data Recovery Advise)是一个诊断和修复数据库的工具,DRA能够修复数据文...
RMAN(Recovery Manager)是Oracle恢复管理器的简称,是集数据库备份(backup)、修复(restore)和恢复...
(1)备份对象 可以使用RMAN进行的备份对象如下: --整个数据库:备份所有的数据文件和控制文件; --数...