|
本帖最后由 qingyun 于 2012-2-26 17:05 编辑
两个用户 USER_A,USER_B
赋予了DBA权限; 其他权限未选;
两个用户都有一张一模一样的表名 TABLE1;
于是在USER_A为当前用户的情况下:
执行: INSERT INTO TABLE1 SELECT * FROM USER_B.TABLE1 没问题;
执行:
BEGIN
INSERT INTO TABLE1 SELECT * FROM USER_B.TABLE1;
END;
也没问题;
执行:
BEGIN
EXECUTE IMMEDIATE ' INSERT INTO TABLE1 SELECT * FROM USER_B.TABLE1';
END;
也没问题;
但是就是不能些存储过程:
create procedure xxx
as
begin
INSERT INTO TABLE1 SELECT * FROM USER_B.TABLE1;
EXECUTE IMMEDIATE ' INSERT INTO TABLE1 SELECT * FROM USER_B.TABLE1';
end;
上面两句话,任意一句都有问题;
提示 USER_B.TABLE1 不存在;
oracle是用的 oracle 11gR2
|
|