SQL*Loader FAQ
ת×Ô£ºhttp://www.orafaq.com/wiki/SQL*Loader_FAQ#How_can_one_get_SQL.2ALoader_to_COMMIT_only_at_the_end_of_the_load_file.3F
Contents
[hide
]
1
What is SQL*Loader and what is it used for?
2
How does one use the SQL*Loader utility?
3
How does one load MS-Excel data into Oracle?
4
Is there a SQL*Unloader to download data to a flat file?
5
Can one load variable and fixed length data records?
6
Can one skip header records while loading?
7
Can one modify data as the database gets loaded?
8
Can one load data from multiple files/ into multiple tables at once?
9
Can one selectively load only the records that one needs?
10
Can one skip certain columns while loading data?
11
How does one load multi-line records?
12
How does one load records with multi-line fields?
13
How can one get SQL*Loader to COMMIT only at the end of the load file?
14
Can one improve the performance of SQL*Loader?
15
What is the difference between the conventional and direct path loader?
16
How does one use SQL*Loader to load images, sound clips and documents?
17
How does one load EBCDIC data?
[edit
]
What is SQL*Loader and what is it used for?
SQL*Loader is a bulk loader utility used for moving data from external files into the Oracle database
. Its syntax is similar to that of the DB2
load utility, but comes with more options. SQL*Loader supports various load formats, selective loading, and multi-table loads.
SQL*Loader (sqlldr) is the utility to use for high
performance data loads. The data can be loaded from any text file and
inserted into the database.
[edit
]
How does one use the SQL*Loader utility?
One can load data into an Oracle database by using the sqlldr (sqlload on some platforms) utility. Invoke the utility without arguments to get a list of available parameters. Look at the following example:
sqlldr username@server/password control=loader.ctl
sqlldr username/password@server control=loader.ctl
This sample control file (
Ïà¹ØÎĵµ£º
1.Ñ¡Ôñ×îÓÐЧÂʵıíÃû˳Ðò(Ö»ÔÚ»ùÓÚ¹æÔòµÄÓÅ»¯Æ÷ÖÐÓÐЧ)¡¡¡¡
¡¡¡¡ SQLSERVERµÄ½âÎöÆ÷°´ÕÕ´ÓÓÒµ½×óµÄ˳Ðò´¦Àífrom×Ó¾äÖеıíÃû£¬Òò´Ëfrom×Ó¾äÖÐдÔÚ×îºóµÄ±í£¨»ù´¡±ídriving table£©½«±»×îÏÈ´¦Àí£¬ÔÚfrom×Ó¾äÖаüº¬¶à¸ö±íµÄÇé¿öÏ£¬±ØÐëÑ¡Ôñ¼Ç¼ÌõÊý×îÉٵıí×÷Ϊ»ù´¡±í£¬µ±SQLSERVER´¦Àí¶à¸ö±íʱ£¬»áÔËÓÃÅÅÐò¼°ºÏ²¢µÄ·½Ê½Á ......
--º¯ÊýÈçÏ£º
/*
CREATE FUNCTION dbo.fnpbGetPYFirstLetter
(
@str NVARCHAR(4000)
)
RETURNS NVARCHAR(4000)
--WITH ENCRYPTION
AS
BEGIN
DECLARE @WORD NCHAR(1),@PY NVARCHAR(4000)
SET @PY=''
WHILE LEN(@STR)>0
BEGIN
SET @WORD=LEF ......
ÏȰѳÌÐò´ò¿ª,²Ëµ¥ÉÏ Environment/Examples/Performance Examples ÔÚ¿Õ°×´¦ÊäÈë
ÒªÖ´ÐеijÌÐò,×¢ÒâÒ»¶¨ÒªÕýÈ·,·ñÔòºó¹ûºÜÑÏÖØ,ºÇºÇ.
data: itab type table of TRDIR with header line.
select * from TRDIR into table itab
where NAME = 'ZHRRPT1011'.
read table itab with key name = 'ZHRRPT1011'.
......
/*
PL/SQL±í---table()º¯ÊýÓ÷¨£º
ÀûÓÃtable()º¯Êý£¬ÎÒÃÇ¿ÉÒÔ½«PL/SQL·µ»ØµÄ½á¹û¼¯´úÌætable¡£
oracleÄÚ´æ±íÔÚ²éѯºÍ±¨±íµÄʱºòÓõıȽ϶࣬ËüµÄËÙ¶ÈÏà¶ÔÎïÀí±íÒª¿ì¼¸Ê®±¶¡£
simple example£º
1¡¢table()½áºÏÊý×飺
*/
create or replace type t_test as object(
id integer,
rq date,
mc varchar2(60)
);
cr ......
//ÔÚÓ¦ÓóÌÐòOpen ʼþ´úÂëÖÐ
idle(600)
openbakflag=1
///////////////////////¶ÁÈ¡ÅäÖÃÎļþÊý¾Ý¿âÁ¬½ÓÉèÖÃ///////////////////////
string server,datname,datuser,datpsw
server=ProfileString ( "yy.ini","yygl","server", "" )
datname=ProfileString ( "yy.ini","yygl","datname", "" )
datuser=ProfileStrin ......