5

I was wondering if there was a way I can execute a SQL Loader script from SQL Plus.

We are using Oracle 10g.

6

An alternative technique may be to use an external table. There is no need to take your CSV (or whatever) file and load it in a separate step. Simply declare your external table in the correct format (this is almost identical to a SQL*Loader parfile, but wrapped in a CREATE TABLE statement) and you can issue a SELECT directly against it, once the file is in the right place. It will create .BAD and .LOG files, just like SQL*Loader for any records that can't be cast to the datatypes in the table. You could expect better performance too. These days I would consider SQL*Loader to be for legacy apps only.

  • Just found out that this approach won't work for loading (C)LOBs. I guess I'll give @BenV's suggestion a try ... – Thomas Jung Jan 8 '16 at 22:12
6

You should be able to run it via the HOST command:

SQL> host /path/to/ora/bin/sqlldr parfile=...

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.