使用者下有同名物件引起的問題

楊奇龍發表於2010-07-19

A使用者有一個儲存過程test(此過程就是在A使用者下建的)

A使用者執行過程:
begin
    test;
  end;
一切正常

然後還是在A使用者下過程前面加owner
begin
    a.test;
  end;

ERROR at line 1:
ORA-06550: line 1, column 12:
PLS-00302: component 'TEST' must be declared
ORA-06550: line 1, column 7:
PL/SQL: Statement ignored

原因是找到了在A使用者下有一個同名的叫A的同義詞,這個同義詞指向另一個使用者的表

begin
    a.test;
  end;
oracle現在認為是a同義詞的test欄位了
---------------模擬錯誤-------------

SQL> conn scott/yang
已連線。
SQL> create synonym scott for test;
同義詞已建立。
SQL> select ename from scott;
ENAME                                                                           
----------                                                                     
xiaonan                                                                        
yangyi                                                                          
WARD                                                                           
JONES                                                                           
MARTIN                                                                          
BLAKE                                                                           
CLARK                                                                           
SCOTT                                                                           
KING                                                                           
TURNER                                                                          
ADAMS                                                                           
JAMES                                                                           
FORD                                                                           
MILLER                                                                          
已選擇14行。
SQL> select empno from test;
     EMPNO                                                                     
----------                                                                     
      7369                                                                     
      7499                                                                     
      7521                                                                     
      7566                                                                     
      7654                                                                     
      7698                                                                     
      7782                                                                     
      7788                                                                     
      7839                                                                     
      7844                                                                     
      7876                                                                                                                                       
      7900                                                                     
      7902                                                                     
      7934                                                                     
已選擇14行。
SQL> conn system/yang as sysdba
已連線。
SQL> select * from  scott.test;
     EMPNO ENAME      JOB              MGR HIREDATE              SAL       COMM
---------- ---------- --------- ---------- -------------- ---------- ----------
    DEPTNO                                                                     
----------                                                                     
      7369 xiaonan    CLERK           7902 17-12月-80            800            
        20                                                                     
                                                                                
      7499 yangyi     SALESMAN        7698 20-2月 -81           1600        300
        30                                                                     
                                                                                
      7521 WARD       SALESMAN        7698 22-2月 -81           1250        500
        30                                                                     
                                                                                
     EMPNO ENAME      JOB              MGR HIREDATE              SAL       COMM
---------- ---------- --------- ---------- -------------- ---------- ----------
    DEPTNO                                                                     
----------                                                                     
      7566 JONES      MANAGER         7839 02-4月 -81           2975            
        20                                                                     
                                                                                
      7654 MARTIN     SALESMAN        7698 28-9月 -81           1250       1400
        30                                                                     
                                                                                
      7698 BLAKE      MANAGER         7839 01-5月 -81           2850            
        30                                                                     
                                                                                
     EMPNO ENAME      JOB              MGR HIREDATE              SAL       COMM
---------- ---------- --------- ---------- -------------- ---------- ----------
    DEPTNO                                                                     
----------                                                                     
      7782 CLARK      MANAGER         7839 09-6月 -81           2450            
        10                                                                     
                                                                                
      7788 SCOTT      ANALYST         7566 19-4月 -87           3000            
        20                                                                     
                                                                                
      7839 KING       PRESIDENT            17-11月-81           5000            
        10                                                                     
                                                                                
     EMPNO ENAME      JOB              MGR HIREDATE              SAL       COMM
---------- ---------- --------- ---------- -------------- ---------- ----------
    DEPTNO                                                                     
----------                                                                     
      7844 TURNER     SALESMAN        7698 08-9月 -81           1500          0
        30                                                                     
                                                                                
      7876 ADAMS      CLERK           7788 23-5月 -87           1100            
        20                                                                     
                                                                                
      7900 JAMES      CLERK           7698 03-12月-81            950            
        30                                                                     
                                                                                
     EMPNO ENAME      JOB              MGR HIREDATE              SAL       COMM
---------- ---------- --------- ---------- -------------- ---------- ----------
    DEPTNO                                                                     
----------                                                                     
      7902 FORD       ANALYST         7566 03-12月-81           3000            
        20                                                                     
                                                                                
      7934 MILLER     CLERK           7782 23-1月 -82           1300            
        10                                                                     
                                                                                
已選擇14行。

模擬不出錯誤呀!問題出在哪裡?

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/22664653/viewspace-668413/,如需轉載,請註明出處,否則將追究法律責任。

相關文章