呵呵,你可能没有对ods.t_dm 视图select的权限

解决方案 »

  1.   

    权限是有的,我是dba权限,而且,在单独sql中,select * from ods.t_dm b 也可以察看。
      

  2.   

    在PL/SQL Developer 里输入用户名会有提示:)
      

  3.   

    ------在PL/SQL Developer 里输入用户名会有提示:)什么意思,没看懂。
      

  4.   

    在单独sql中,select * from ods.t_dm b 也可以察看。
    是在存储过程中么?
      

  5.   

    不是在存储过程里,在sql window里面运行是正常的,可一拿到存储过程里面,就会出现这错误。 我在command window 运行该存储过程,就会提示该名无效。
      

  6.   

    存储过程中,所有权限都必须显式授予!!即便你是DBA,也得有显式授权,才能在存储过程中访问其它用户的表
      

  7.   

    当SELECT语句写在过程中时应先定义一个游标,写为:
    create or replace procedure myp
    is 
        cursor c is select a.* from ods.t_kt a,ods.t_dm b where .......;
    begin
        open c;
    end;你不妨试试!