Oracle
 sql >> Base de données >  >> RDS >> Oracle

Autoriser un utilisateur à effectuer une sélection dans un tableau

Dans le premier cas, cela ne fonctionne pas car vous devez soit :

  1. Référencez le nom de la table, y compris le schéma dans lequel elle se trouve. c'est-à-dire

    SELECT * FROM schema.EMP;

OU
2. Créez un synonyme [public] afin de pouvoir "voir" la table sans inclure le schéma dans chaque instruction SQL.

Dans le second cas, vous essayez de référencer le schéma, mais vous vous trompez. La table EMP se trouve généralement dans le schéma SCOTT, pas dans SYSTEM. Bien que dans votre cas, vous deviez peut-être faire :

grant select on cis605.emp to chap7;

De plus, avoir un utilisateur appelé "USER" est une mauvaise idée - c'est un mot-clé Oracle. (Bien que je suppose que cela peut être juste à titre d'exemple)