2011-08-05 18 views

答えて

16

できません。

あなたができることは、スキーマbの各テーブルに「選択」権限を与えることです。このクエリはあなたが必要とするコマンドが生成されます

select 'grant select on A.'||table_name||' to B;' 
from dba_Tables 
where owner = 'A'; 

これに伴う問題を、あなたはAに新しいテーブルを追加することになるでしょう場合には、あなたは、権限を付与する必要がありますされますそれを別々にそれは...自動的にそれを行うことはありません

あなたはユーザーBに、あなたがアクセスする dba_tables、 すべてのテーブルに権限を付与します所有するスキーマ(A)内のコードの実行の次のブロックを持っていないかもしれ
7

BEGIN 
    FOR t IN (SELECT * FROM user_tables) 
    LOOP 
     EXECUTE IMMEDIATE 'GRANT SELECT ON ' || t.table_name || ' TO b';  
    END LOOP; 
END; 
関連する問題