Error creating Streams example - ORA-01729: database link name expected

Running 11gR1. Example from doc, "4 Single-Database Capture and Apply Example"
the database name is "11G3". when I run the Step 3 statement below, I get the error below. What am I doing wrong? Thanks!
DECLARE
iscn NUMBER; -- Variable to hold instantiation SCN value
BEGIN
iscn := DBMS_FLASHBACK.GET_SYSTEM_CHANGE_NUMBER();
DBMS_APPLY_ADM.SET_TABLE_INSTANTIATION_SCN(
source_object_name => 'hr.employees',
source_database_name => '11G3',
instantiation_scn => iscn);
END;
Error at line 1
ORA-01729: database link name expected
ORA-06512: at "SYS.DBMS_LOGREP_UTIL", line 742
ORA-06512: at "SYS.DBMS_APPLY_ADM", line 726
ORA-06512: at line 5

The manual stated to be GLOBAL_NAMES compliant which means DBLINK=target DB_NAME and SID cannot start with a figure. I strongly suggest to pay a careful look to manuals as Streams has a lot of others tricks under the hat awaiting for you.

Similar Messages

  • Persistent Layer Error Message: ORA-01729 database link name expected

    Hi,
    I've done a series of loads from DB2 into Oracle, initially importing the database objects from DB2 and Oracle, then creating the mappings, deploying and executing. It all worked and I had no problems. For some reason now whenever I tried to import a new Database Object (table) from the DB2 I enter the password, test it and it successfully connects but then I get the error message on a popup box:
    SQL Exception
    Persistent Layer Error: SQL Exception
    Class Name: CacheMediator
    Method Name: getSQLResult
    Persistent Layer Error Message: ORA-01729 database link name expected
    If I create a new location for the same database it works and I can import new objects. The only difference I can think from the initial imports is that I’ve moved the repository from one server to another. Might be the case where some information got corrupted in the metadata.
    Has anyone seen this kind of problem before? Can you please help me out with this issue?
    Thanks in advance for your help.
    Regards,
    Leo

    I found it.When I look at the db links there is something missing.When I correct it everything works fine.

  • ODI dataloading Fails With ORA-01729: database link name expected

    Hi All,
              can any one provide me the solution for this error..
    thanks,
    Yogi.

    The correct syntax for denoting a table in a remote database follows:
    username.table_name@ database_name

  • Standard Data Collection Failing with Error ORA-04054: database link  does not exist.

    Hi Gurus,
    When I am running Standard Data Collection in ASCP(APS) instance R12.1.3, its failing with error : ORA-04054: database link  does not exist.
    There is no such Database link exits which is showing in above error.
    Also the database link name in the above error is not profile values in the database.
    I think, concurrent might be fetching this database link name  from some tables related to plan.
    I am not having much knowledge about how this ASCP/APS works.
    Need your help to resolve this issue.
    Thanks,

    Hi,
    ASCP Collections looks at the dblink from instances definitions from.
    1. Responsibility: Advanced Planning Administrator
    2. Navigation: Admin > Instances
    You may review the note in support.oracle.com - Understanding DB Links Setup for APS Applications - ASCP and ATP Functionality (Doc ID 813231.1)

  • ORA-04054 : using variable substitution for the database link name

    Hi,
    I need to use variable substitution for the database link name.
    Here is my command :
    declare
    GET VARCHAR2(50);
    begin
    select OIA_GET_DESIGNATION into GET from INFODRI.OMA_IN_ARTICLES;
    for rec in (select * from [email protected]_GET_DESIGNATION)
    LOOP
    dbms_output.put_line('TEN_CODE vaut : '||rec.ten_code);
    END LOOP;
    exception
    WHEN OTHERS THEN
    DBMS_OUTPUT.PUT_LINE('ERREUR ORACLE DETECTEE : '||rec.OIR_CUR);
    DBMS_OUTPUT.PUT_LINE('Message Erreur : '||SUBSTR(SQLERRM,1,245));
    :crd := -1;
    end;
    When I run this programm, I receive the error :
    ORA-04054: database link REC.OIA_GET_DESIGNATION does not exist
    When I replace :
    for rec in (select * from [email protected]_GET_DESIGNATION)
    by :
    for rec in (execute immediate 'select * from tensions@'||rec.OIA_GET_DESIGNATION)
    I receive the error :
    PLS-00103 : Encountered the symbol "IMMEDIATE" while parsing.
    What can I do to resolv my problem ?
    Regards,
    Rachel

    What is the name of the DB Link and the name of the object you are selecting
    from?
    I find it easier to create a view on the remote object then use that in selects.
    e.g,
    Link Name = MyLink
    Object_name = Addr_Loc
    create or replace VIEW Rem_Addr_Loc AS
    select * from addr_loc@mylink;
    In the code I then use the view
    begin
      for C_Rec in (select * from Rem_Addr_loc)
      loop
         dbms_output.put_line('Rec: '|| C_Rec.Col1);
      end loop;
    end;                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Passing plsql parm to a sql statement in the procedure  database link name

    Would like to pass a parm that is the database link name to a stored procedure.  I defined this as below. var1 is the name of the db link that I would like to pass
    create or replace procedure   proc1  (var1 in varchar2) as
    cursor c1 is
    select num,name,city from emp@var1;
    However, this is getting a plsql error in the above code   as bad bind variable, db link name expected.
    Is there a method to pass a variable within a stored proc into a SQL statement that has a cursor ..
    thanks

    Hi,
    Database links have to be hard-coded.  If you really need to specify the database link at run-time, then you need Dyanmic SQL.
    Why do you need to do this?   How many databases are involved?  Do you have new database links all the time?  The more you can say about your business requirements, the more helpful we can be.
    Are there only a couple of possible database links?  If so,  you might consider hard-coding each of them, and branching to the appropriate one in your code.
    is the real variable here the environment (Development, Test, Production) that you're in?  For example, do you need to use one database link in Development, a different one in Test, and a third in Production, but you don't want to change the code when you move from one environment to another?  If so, you can try conditional comilation.

  • Database link name does not work with JDBC.

    Hi,
    I am new to Oracle database. I run a query from a Java class and after waiting around 20 minutes then it returns "ORA-04021 timeout occurred while waiting to lock DBMS_LOCK" error. The query is:
    select r2.EXTERNAL_ID, d.EXTERNAL_ID AS ISIMPORTED from (select external_id from results r1
    where r1.*run_id = ?* and not exists
    (select id from results@cdata where external_id = r1.external_id and run_id = r1.run_id)
    order by r1.external_id) r2 left join dummymaindata d on r2.external_id =d.external_id;
    In this query I use a database link to access another database. The strange thing is at least for me, if I use "@cdata" it always gets stuck for at least 20 minutes and end with an exception "ORA-04021 timeout occurred while waiting to lock DBMS_LOCK" but if I use any combination of the database link name instead of the "@cdata" for example "@CDATA", "@Cdata", "@cDaTA", "@CdaTa" etc., it works fine without any exception.
    This starnge behavior is only with this query for using the database link name while with any other query it does not matter that how I do write the db link name.
    Kindly answer.
    Arshad..

    Hi,
    1) What is your Oracle, JDBC driver, target Oracle (to which you are connecting through DB link) versions?
    2) Are you using DBMS_LOCK somewhere in the code? PL/SQL procedures on the source/target servers?
    3) Can you construct a complete reproducible test case?

  • Database Link Name

    Hello All
    I got a problem with making a database link.
    When I execute this query
    CREATE PUBLIC DATABASE LINK DBNAME
    CONNECT TO database IDENTIFIED BY name
    USING 'DBNAME.europe.company.com';
    I am using other names because its private information
    But when I look at the table dba_db_links I see this
    OWNER | DB_LINK | USERNAME | HOST
    PUBLIC | DBNAME.europe.company.com | name | DBNAME.europe.company.com
    So the DB_Link name is changed. And this causes a problem with my asp website. I get the fault message
    ORA-02085: database link DBNAME.europe.company.com connects to DBNAME
    Cause: a database link connected to a database with a different name. The connection is rejected.
    So does anyone knows what is wrong about my Query or how I can change the DB_Link name.
    Thanks for the support,
    Remco

    It could be that DBNAME.europe.company.com
    must be the exact name of the database on the target site. I think it depends on the listener configuration. You might also have to check for GLOBAL_NAMES parameter on the target database.
    A better forum to ask this question would be the General-Database forum, where all the DBAs are hiding. ;)

  • I am getting Render Filter error - Error in Symmetry initialization script: line 43: Variable name  expected. PLEASE HELP.

    Hi all,
    I have quit Creative Cloud. Checked for updates.
    Only activity that could have affected system files was to uninstall the CC apps, keeping the CC 2014 apps only.
    I need to use the render flame filter but I get the following error
    Error in Symmetry initialization script: line 43: Variable name expected
    I get this error with render tree and render frame.
    A response will be appreciated
    Thanks

    There is a "Symmetry Fill.jsx" script is Photoshop CC 2014 Preset Deco folder along with "Picture Frame.jsx" and "Tree.jsx" each of those scripts line 43 is a comment not executable code.  There are other scripts in that folder related the those rendering scripts could your folder have been corrupted somehow. I don't think uninstalling CC would have corrupted that folder for the doler fi not exist when CC was installed.
    Look at the line 43 in the files, Here is what I see on my Windows 7 Pro CC 2014 system

  • Error while creating materialized view which using database link

    Helo!
    I'm getting error "ORA-00942: table or view does not exist" when I want to create materialized view.
    Details:
    1. On destination database I create a database link:
    CREATE DATABASE LINK SDATABASE
    CONNECT TO MYUSER
    IDENTIFIED BY MYUSERPASS
    USING 'ORCL';
    => Command "SELECT * FROM TABLE1@SDATABASE" returns data normally!
    2. On source database I create MATERIALIZED VIEW LOG:
    CREATE MATERIALIZED VIEW LOG
    ON TABLE1
    WITH PRIMARY KEY
    INCLUDING NEW VALUES;
    3. Now, when I want to create MATERIALIZED VIEW on destination database:
    CREATE MATERIALIZED VIEW TABLE1
    REFRESH FAST
    START WITH SYSDATE
    NEXT SYSDATE + 1/1440
    WITH PRIMARY KEY
    AS SELECT * FROM TABLE1@SDATABASE;
    ...I get error "ORA-00942: table or view does not exist"!
    How is that possible if command "SELECT * FROM TABLE1@SDATABASE" returns data normally?
    Thanks,
    Voranc

    And, I'm using Oracle 10g.
    Voranc

  • ORA-02081 error while trying to drop a database link

    Hello,
    I am trying to drop a database link but getting ORA-02081. How do you drop a database link if it is not open? Any help will be much appreciated.
    Mustafa

    Try this:
    COMMIT;
    alter session close database link dbl1;
    drop database link dbl1;
    Regards,

  • ORA-02018: database link of same name has an open connection

    Hi All,
    Am getting the above error msg from a procedure (packaged or not, doesn't seem to matter), run from a .SQL script through sqlPlus, where I've created a DB link, fired off a bunch of queries against it using dynamic SQL, and then tried to drop the database link. Have tried both through dynamic SQL as well as via as a straight statement in the SQL script and in both cases, get this statement. However, if I then open another connection/session to the DB, am able to drop the link fine. So - it seems related to the session life-cycle? Perhaps some sort of caching going on at the DB level is locking the DB link? Anyone else hit this, and if so, any clues on workarounds?
    Pretty sure this is "new" (10g) behavior as this script used to work fine in older (9i) DBs...
    Thanks,
    Jim

    Check this link. It explains exactly what you are facing.
    http://asktom.oracle.com/pls/asktom/f?p=100:11:0::::P11_QUESTION_ID:1253651449550
    Regards
    Raj

  • Can we create pl/sql code over database link?

    Hi All,
    We are using Oracle 9i database.
    I want to know if we can create or modify pl/sql code (procedue, package, etc) over the database link? That means - can we create a procedure in remote database using the db link?
    Thanks,
    Dnyanesh

    yes, I can connect to the remote database directly and create/modify the packages.
    But I want the users not to create them using the db link.
    Is there any way to create the pl/sql package over database link?
    Thanks,
    Dnyanesh

  • Database Link name altered automatically

    Hi everybody,
    I'm facing here some strange behavior when I'm trying to create a database link. Here's the statement for creating the database link:
    CREATE DATABASE LINK "DEVELOP" CONNECT TO "XXX" IDENTIFIED BY XXX USING 'develop';
    After starting Oracle's SQL Developer it turns out that the link is successfully created.
    BUT it's not named 'DEVELOP' as expected! Instead the link is named 'DEVELOP.100.10.82.181'
    This leads to problems with a DataPump-Job because of an "invalid argument" (I suppose in this case the wrong link name)
    How can I avoid this behavior? Or is it possible to alter the name? So far I did not found a solution or comprehendible explanation.
    Any help will be highly appreciated.
    Kind regards
    Alex

    Robert Geier wrote:
    Database version ?
    select db_link from dba_db_links;
    Try removing some of the quotes.@Robert: removing the quotes did not solve the problem.
    Operating System: Mac OS X 10.5.8
    SQL> SELECT * from v$version;
    BANNER
    Oracle Database 10g Release 10.2.0.4.0 - Production
    PL/SQL Release 10.2.0.4.0 - Production
    CORE 10.2.0.4.0 Production
    TNS for MacOS X Server: Version 10.2.0.4.0 - Production
    NLSRTL Version 10.2.0.4.0 - Production
    SQL> select db_link from dba_db_links;
    DB_LINK
    DEVELOP.100.10.82.181
    SQL> SELECT * FROM GLOBAL_NAME;
    GLOBAL_NAME
    CORPUS.100.10.82.181
    SQL> SHOW PARAMETER global;
    NAME TYPE VALUE
    global_context_pool_size string
    global_names boolean FALSE
    Thanks again
    Edited by: user9253174 on 03.03.2010 01:41

  • Databases link name required without  global_name

    Hi,
    My global_name is "ORCL.REGRESS.RDBMS.DEV.US.ORACLE.COM" when i create any database link the name create like "U_NET_LINK.REGRESS.RDBMS.DEV.US.ORACLE.COM"
    How i eliminate global_name without edit my initora file using SQL .
    Regards
    Faheem

    You need to check parameter global_names
    alter system set global_names=true scope=both;
    System altered.http://download.oracle.com/docs/cd/B19306_01/server.102/b14237/initparams077.htm#CHDGEHBB
    Also what's your DB_NAME and DB_DOMAIN set at?
    Your global name looks rather erratic.

Maybe you are looking for