用户下有同名对象引起的问题

简介: A用户有一个存储过程test(此过程就是在A用户下建的)A用户执行过程:begin    test;  end;一切正常然后还是在A用户下过程前面加ownerbegin    a.

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行。

模拟不出错误呀!问题出在哪里?

目录
相关文章
|
4月前
|
C++
C++程序中对象成员的引用
C++程序中对象成员的引用
37 2
|
3月前
|
C++
友元是一种允许某些外部函数或类访问另一个类的成员的机制
友元是C++中的一个强大特性,它提供了一种机制来允许特定的外部函数或类访问私有和保护成员。正确使用友元可以增强程序的功能性和灵活性,但应谨慎使用以避免破坏封装性和增加代码的复杂度。在设计类和功能时,合理利用友元,可以使得C++程序更加有效和高效。
31 2
|
4月前
|
C++
C++程序中的派生类成员访问属性
C++程序中的派生类成员访问属性
36 1
|
10月前
|
C++
45 C++ - 继承中同名成员的处理方法
45 C++ - 继承中同名成员的处理方法
43 0
|
4月前
|
Java
不同访问修饰符的访问数据权限的区别
不同访问修饰符的访问数据权限的区别
|
4月前
|
C++
28对象成员的引用
28对象成员的引用
26 0
|
Java Scala vr&ar
内部类访问外部类属性案例|学习笔记
快速学习内部类访问外部类属性案例。
115 0
类初始列表和类对象作为类成员
类初始列表和类对象作为类成员
类初始列表和类对象作为类成员
|
Java
【Groovy】Groovy 方法调用 ( 使用 对象名.成员名 访问 Groovy 类的成员 | 使用 对象名.‘成员名‘ 访问类的成员 | 使用 对象名[‘成员名‘] 访问类成员 )
【Groovy】Groovy 方法调用 ( 使用 对象名.成员名 访问 Groovy 类的成员 | 使用 对象名.‘成员名‘ 访问类的成员 | 使用 对象名[‘成员名‘] 访问类成员 )
222 0
【Groovy】Groovy 方法调用 ( 使用 对象名.成员名 访问 Groovy 类的成员 | 使用 对象名.‘成员名‘ 访问类的成员 | 使用 对象名[‘成员名‘] 访问类成员 )