Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> RE: supplying dblink name to package at runtime
Hi
You can use native dynamic PLSQL (8.1 or higher) to do this
stmt varchar2(2000);
stmt := 'INSERT INTO mm_product_temp (rec, rec_old, name, is_disabled,
is_workingcopy)
(SELECT mm_product_seq.nextval, rec, name, is_disabled, is_workingcopy
FROM mm_product@'||v_dblink||' WHERE last_update IS null);'
execute immediate stmt;
Rgds
Arvind Balaraman
-----Original Message-----
Sent: Friday, October 25, 2002 1:09 PM
To: Multiple recipients of list ORACLE-L
Hi,
I'm trying to incorporate a procedure in a package that needs to run using a dblink name supplied at runtime. The dblink is used in the dml inside the procedure, but when I compile the package I get "ORA-00942 table or view does not exist" for all the sql referencing the dblink.
Here is a code snippet:
PROCEDURE CREATE_WC_OVER_DBLINK ( DBLINK VARCHAR2) v_dblink VARCHAR2(100) := dblink;
BEGIN
INSERT INTO mm_product_temp (rec, rec_old, name, is_disabled,
is_workingcopy)
(SELECT mm_product_seq.nextval, rec, name, is_disabled, is_workingcopy
FROM mm_product_at_v_dblink
WHERE last_update IS null);
.....
END;
/
The ORA-00942 shows up for the line with the INSERT statement.
Looking for ideas as to how to do this. I saw a MetaLink forum posting indicating that the way to do this is to create a refcursor, then use a function to return the supplied sql to the refcursor, then open the refcursor, etc. etc.
Is this the only way to do it?
thanks
bill
-- Please see the official ORACLE-L FAQ: http://www.orafaq.com -- Author: Magaliff, Bill INET: Bill.Magaliff_at_lendware.com Fat City Network Services -- 858-538-5051 http://www.fatcity.com San Diego, California -- Mailing list and web hosting services --------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-LReceived on Fri Oct 25 2002 - 12:54:13 CDT
(or the name of mailing list you want to be removed from). You may
also send the HELP command for other information (like subscribing). -- Please see the official ORACLE-L FAQ: http://www.orafaq.com -- Author: Balaraman, Arvind INET: ABalaram_at_oxhp.com Fat City Network Services -- 858-538-5051 http://www.fatcity.com San Diego, California -- Mailing list and web hosting services --------------------------------------------------------------------- To REMOVE yourself from this mailing list, send an E-Mail message to: ListGuru_at_fatcity.com (note EXACT spelling of 'ListGuru') and in the message BODY, include a line containing: UNSUB ORACLE-L
(or the name of mailing list you want to be removed from). You may
also send the HELP command for other information (like subscribing).
![]() |
![]() |