Im ersten Fall funktioniert es nicht, weil Sie entweder:
-
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)