oracle 報錯 :ORA-04052、 ORA-00604、 ORA-03106、 ORA-02063


最近發現一個很奇怪的問題:

創建了一個DB_LINK連接另一個Oracle數據庫。

select * from tablename@dblinkname;

單句執行沒問題,但是把這句SQL寫到存儲過程內:

create or replace procedure prc_test
is
begin
insert into test
select * from tablename@dblinkname;
commit;

end;

就發生如下錯誤,存儲過程編譯不通過:

報錯如下:PACKAGE BODY SKSKJ.PKG_TS 編譯錯誤

錯誤:PL/SQL:

       ORA-04052: error occurred when looking up remote object DZDZ_123.SM123@DZDZ123
       ORA-00604: error occurred at recursive SQL level 1
       ORA-03106: fatal two-task communication protocol error
       ORA-02063: preceding line from DZDZ_SJTS
行:32
文本:insert into sm123@DZDZ123

也不是所有的數據庫都有這樣的問題。
 
哪位大俠遇到過這樣的問題,能否給個解決方案?非常感謝!
 
 
附:創建dblink的腳本:
 
-- Drop existing database link
drop database link dblink1;
-- Create database link
create database link dblink1
  connect to username123 identified by passwd123
  using '(DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 172.16.*.*)(PORT = 1521))
    )
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = 123)
    )
  )';

 
drop synonym test;
create synonym test for test@dblink1;





--metalink上解決問題方法,打上對應的補丁就解決了。

Subject:  Errors ORA-00604 And ORA-03106 During Procedure Compilation
  Doc ID:  577347.1 Type:  PROBLEM
  Modified Date :  26-MAY-2008 Status:  MODERATED


Applies to:
PL/SQL - Version: 9.2.0.4 to 9.2.0.8
This problem can occur on any platform.
This note applies only if the underlying Oracle Client is below 9.2.0.8 Patch 4


Symptoms
While trying to run pl/sql code involving queries which access remote objects, you may endup getting below errors:

PL/SQL: ORA-04052: error occurred when looking up remote object <object name>
ORA-00604: error occurred at recursive SQL level 1
ORA-03106: fatal two-task communication proto error
ORA-02063: preceding line from AFQ

When the same query is run outside pl/sql block it runs perfectly.

Cause
You are most probably hitting the Bug 5866805.
Bug 5866805 duplicate of Bug 5576340 which is itself a duplicate of Bug 5671074.


Solution
The Bug 5671074 IS fixed IN 9.2 .0 .8 Patch 4 OR above.


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM