2017-08-09 22 views
0

私が許可したユーザー名は変更可能です。したがって、次のようなSQLを記述したいと思います。GRANT動的ユーザーへのアクセス許可SQL

grant ANALYZE ANY DICTIONARY to (select USERNAME from DBA_USERS where DEFAULT_TABLESPACE = 'MCP_DATA'); 

ただし、エラーが発生します。 すべてのコメントやご提案をいただければ幸いです。

+0

エラーとは何ですか? – Prathyush

答えて

0

使用EXECUTE IMMEDIATE

DECLARE 
    username DBA_USERS.USERNAME%TYPE; 
BEGIN 
    SELECT USERNAME 
    INTO username 
    FROM DBA_USERS 
    WHERE DEFAULT_TABLESPACE = 'MCP_DATA'; 

    EXECUTE IMMEDIATE 'GRANT ANALYZE ANY DICTIONARY TO ' || username; 
END; 
/
+0

ありがとうございます。それは働いている! –

関連する問題