Oracle
 sql >> Datenbank >  >> RDS >> Oracle

Einem Benutzer erlauben, aus einer Tabelle auszuwählen

Im ersten Fall funktioniert es nicht, weil Sie entweder:

  1. Verweisen Sie auf den Tabellennamen einschließlich des Schemas, in dem er sich befindet, z. B.

    SELECT * FROM schema.EMP;

ODER
2. Erstellen Sie ein [öffentliches] Synonym, um die Tabelle "sehen" zu können, ohne das Schema in jede SQL-Anweisung aufzunehmen.

Im zweiten Fall versuchen Sie, auf das Schema zu verweisen, erhalten aber das falsche. Die EMP-Tabelle befindet sich normalerweise im SCOTT-Schema, nicht im SYSTEM. Obwohl Sie in Ihrem Fall vielleicht Folgendes tun müssen:

grant select on cis605.emp to chap7;

Außerdem ist es eine schlechte Idee, einen Benutzer namens "USER" zu haben - es ist ein Oracle-Schlüsselwort. (Obwohl ich vermute, dass dies nur als Beispiel dient)