2)dw sqlldr
1@@@@easy example02
@@@
@@@<1>create directory object.
@@@
SYS@ocp> !mkdir -p /home/oracle/dwdir
SYS@ocp> create directory dir01 as '/home/oracle/dwdir';
Directory created.
SYS@ocp> grant read,write on directory dir01 to hr;
Grant succeeded.
@@@
@@@<2>create table for loading data.
@@@
HR@ocp> conn hr/hr
Connected.
HR@ocp> ed
1 create table product
2 (
3 product_id varchar2(20),
4 product_name varchar2(20),
5 category varchar2(20),
6 cost_price number(9,2),
7 sell_price number(9,2),
8 weight number(9,2),
9 shipping_charge number(9,2),
10 manufacturer varchar2(20),
11 supplier varchar2(20)
12* )
HR@ocp> /
Table created.
@@@
@@@<3>make a specified flat file.
@@@
@@@make sure the data file have Stream format.
@@@the comma is the delimiter character.
[oracle@station78 dwdir]$ pwd
/home/oracle/dwdir
[oracle@station78 dwdir]$ cat product.dat
'SP1242', 'CD LX1', 'MUSC', 8.90, 15.67, 2.5, 2.95, 'RTG', 'CD Inc'
'SP1243', 'CD LX2', 'MUSC', 8.91, 15.68, 2.6, 2.97, 'RTG', 'CD Inc'
'SP1244', 'CD LX3', 'MUSC', 8.92, 15.69, 2.7, 2.99, 'RTG', 'CD Inc'
'SP1245', 'CD LX4', 'MUSC', 8.93, 15.70, 2.8, 2.93, 'RTG', 'CD Inc'
@@@
@@@<4>write the control file, and loading data.
@@@
@@@as the data is read, it is converted from data type in input file
@@@to the data type of the column in database.
[oracle@station78 dwdir]$ cat ctl_product.ctl
LOAD DATA
INFILE 'product.dat' append
INTO TABLE product
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY "'"
(
product_id,
product_name,
category,
cost_price,
weight,
shipping_charge,
manufacturer,
supplier
)
@@@
[oracle@station78 dwdir]$ ls
ctl_product.ctl product.dat
[oracle@station78 dwdir]$ sqlldr hr/hr control=ctl_product.ctl
SQL*Loader: Release 10.2.0.1.0 - Production on Wed Aug 22 17:27:39 2012
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Commit point reached - logical record count 4
@@@
@@@<5>check the result.
@@@
[oracle@station78 dwdir]$ cat ctl_product.log
SQL*Loader: Release 10.2.0.1.0 - Production on Wed Aug 22 17:27:39 2012
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Control File: ctl_product.ctl
Data File: product.dat
Bad File: product.bad
Discard File: none specified
(Allow all discards)
Number to load: ALL
Number to skip: 0
Errors allowed: 50
Bind array: 64 rows, maximum of 256000 bytes
Continuation: none specified
Path used: Conventional
Table PRODUCT, loaded from every logical record.
Insert option in effect for this table: APPEND
Column Name Position Len Term Encl Datatype
------------------------------ ---------- ----- ---- ---- ---------------------
PRODUCT_ID FIRST * , O(') CHARACTER
PRODUCT_NAME NEXT * , O(') CHARACTER
CATEGORY NEXT * , O(') CHARACTER
COST_PRICE NEXT * , O(') CHARACTER
WEIGHT NEXT * , O(') CHARACTER
SHIPPING_CHARGE NEXT * , O(') CHARACTER
MANUFACTURER NEXT * , O(') CHARACTER
SUPPLIER NEXT * , O(') CHARACTER
Table PRODUCT:
4 Rows successfully loaded.
0 Rows not loaded due to data errors.
0 Rows not loaded because all WHEN clauses were failed.
0 Rows not loaded because all fields were null.
Space allocated for bind array: 132096 bytes(64 rows)
Read buffer bytes: 1048576
Total logical records skipped: 0
Total logical records read: 4
Total logical records rejected: 0
Total logical records discarded: 0
Run began on Wed Aug 22 17:27:39 2012
Run ended on Wed Aug 22 17:27:39 2012
Elapsed time was: 00:00:00.04
CPU time was: 00:00:00.00