Using a database link in a SQLLDR control file

Is it possible to use a database link in a SQLLDR control file? I tried, but I got the following error:

SQL*Loader: Release 8.1.7.4.0 -
SQL*Loader-350:

    Requires Free Membership to View

Syntax error at line 2.
Illegal combination of non-alphanumeric characters REPLACE INTO TABLE mani_test@my_db_link
So you're loading into database a but the table is actually located in database b. The obvious work-around is to load into database b. That may not be a good solution (for example, if it's a multi-table load and some of the tables do reside in a). Creating a synonym to use in the control file results in a different error, ORA-01405.

Loading into a view does work.

CREATE OR REPLACE VIEW  local_mani_test
AS
SELECT  *
FROM    mani_test@my_db_link;

Use the local view name in your SQLLDR control file.

This was first published in November 2003

Join the conversationComment

Share
Comments

    Results

    Contribute to the conversation

    All fields are required. Comments will appear at the bottom of the article.