sql*plus里面
connect b/pswb
grant select on tbname to a;
connect a/pswa
select * from b.tbname;

解决方案 »

  1.   

    谢谢,可我是在manager console的a方案下的存储过程里编辑和编译的,登陆用户有这两个方案的权限
    CREATE OR REPLACE  PROCEDURE "a"."DD" as
    v_Dcr_Times NUMBER(9);
    begin
     select count(*)+1 into v_Dcr_Times from a.a_table1;  
     select count(*)+1 into v_Dcr_Times from b.b_table1;//错误,找不到表
    end DD;
    oracle和sql*plus都不怎么熟,想问一下,该怎么改?
      

  2.   

    sql*plus里面
    connect b/pswb --登陆到b
    grant select on b_table1 to a;
      

  3.   

    grant select on b_table1 to a;
    b,a是你的两个库的名字
      

  4.   

    CREATE OR REPLACE  PROCEDURE "OFFLINE_EMS3"."DD" as
    v_Dcr_Times NUMBER(9);
    begin
     select max(dcr_type)+1 into v_Dcr_Times from OFFLINE_EMS3.pre_ems3_dcr_head;
     select count(*)+1 into v_Dcr_Times From OFFLINE_DEC.dec_i_head; --表或视图不存在
    end DD;
    如上:我在OFFLINE_EMS3的方案里建这个过程DD,过程DD里要调用到OFFLINE_DEC方案里的表dec_i_head,可编译时它提示“表或视图不存在”通不过
      

  5.   

    可是在OFFLINE_DEC方案里表dec_i_head是存在的,我用sql*plus可以执行select count(*)+1 From OFFLINE_DEC.dec_i_head;