J'ai essayé sans succès d'ajouter une référence à un synonyme public dans un paquet ou une procédure stockée dans Oracle pendant un moment, et je me demande s'il y a des solutions à ce problème à court d'accéder aux tables directement. Par exemple:Oracle 10: Est-il possible d'accéder à un synonyme public à une table dans une procédure stockée ou un package?
CREATE OR REPLACE PROCEDURE test_func AS
test_int INTEGER;<br>
BEGIN<br>
select count(*) INTO test_int FROM test_synonym;
END;
/
Je sais que cette procédure ne fait rien, mais ce n'est qu'un exemple. Où la table 'test_synonym' est en réalité un synonyme public d'une table dans un autre schéma. Je n'ai sélectionner des autorisations à cette table, mais en essayant de compiler cela me donne à plusieurs reprises l'erreur:
Error(5,38): PL/SQL: ORA-00942: table or view does not exist
Merci pour votre temps.
J'ai parlé à l'administrateur de base de données, et nous avons donné à l'utilisateur des privilèges de sélection directe à la table sous-jacente dans l'autre schéma, mais je continue à obtenir des erreurs ORA-00942. – Horus
En fait, j'avais fait un mod de code pour essayer de faire fonctionner ceci avant que je sois allé au DBA, et cela causait l'erreur, votre solution (vérifiez les privs sous-jacents, a semblé fonctionner. – Horus