Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Mailing Lists -> Oracle-L -> RE: Perl again
Zoran,
> -----Original Message-----
> From: oracle-l-bounce_at_freelists.org
> [mailto:oracle-l-bounce_at_freelists.org]On Behalf Of Martic Zoran
> Sent: Thursday, March 10, 2005 2:51 PM
> To: oracle-l_at_freelists.org
> Subject: RE: Perl again
>=20 >=20
>=20
>=20
Sorry, my misread there.
>=20
In D/W apps prior to the ETL changes in 9i and 10g, I used SQL*Loader in = this way. Wrote a lot of shell code to handle these files, but it is do = able.
>=20
Yes, but then you need to write your own error handlers and/or logging = facilities. Granted this is not rocket science, but it is something = else you would need to write.
>=20
Try it for yourself. =20
Test 1 - SQL*Loader direct load logging and nologging (make sure that = the process feeding your sqlldr process has I/O buffering turned off). =20 Test 2 - Pro*C/Perl/whatever direct load logging and nologging (pick = different array sizes).
> At the end it is based on C OCI, is not it?
Yes, but I believe the methods for direct load are different. = SQL*Loader uses a different API for direct loads than the "normal" OCI = libraries.
> And do not believe it they are updating that piece of
> SW all the time :)
> Like exp/imp.
>=20
>=20
>=20
Of course I belive it. Oracle marketing is almost as bad as M$ :)
>=20
Obviously not perfect.
>=20
>=20 >=20
>=20> > Lead DBA
> > Zoran,
> >=20
> > Even though it sounds like it would be hard to use
> > Perl and sqlldr together, it is not. Named pipes
> > have been around for (it seems) decades and command
> > piping (putting one program's STDOUT onto another
> > program's STDIN) has been around forever. After you
> > get the hang of it, you will be amazed at what you
> > can do with the combination of the your favorite
> > shell and Perl.
> >=20
> > I have not used execute_array, but you may also find
> > that no matter how hard you try, you will not beat
> > sqlldr's speed for bulk inserts.
> >=20
> > -----------------
> > Ron Reidy
This electronic message transmission is a PRIVATE communication which =
contains
information which may be confidential or privileged. The information is =
intended=20
to be for the use of the individual or entity named above. If you are =
not the=20
intended recipient, please be aware that any disclosure, copying, =
distribution=20
or use of the contents of this information is prohibited. Please notify =
the
sender of the delivery error by replying to this message, or notify us =
by
telephone (877-633-2436, ext. 0), and then delete it from your system.
-- http://www.freelists.org/webpage/oracle-lReceived on Thu Mar 10 2005 - 18:41:42 CST