Comment effectuer correctement un synonyme public
C'est une question assez bête, mais j'ai besoin d'aide.
J'ai une table appartenant à mydbowner. Il est nommé mydbowner.mytable. J'ai essayé de faire un synonyme public par l'émission de la commande:
De CRÉER OU de REMPLACER SYNONYME PUBLIC mytable POUR mydbowner.matable;
Quand je fais cela, et j'ai une requête à la table-je obtenir:
ORA-01775: boucle de la chaîne de synonymes
Comment puis-je faire ce synonyme sans avoir le problème.
Les deux réponses sont correctes. J'ai fait quelques erreurs de typo et le synonyme visée à rien.
OriginalL'auteur Joe | 2012-01-24
Vous devez vous connecter pour publier un commentaire.
Je pense que Justin est sur la bonne voie. Ce que je pense en fait il veut dire, c'est que mydbowner.mytable n'existe pas.
Voici un exemple:
Je pense que ce qui se passe est que Oracle tente de résoudre mytable, il n'y a pas de mytable dans mbobak schéma, de sorte qu'il semble pour, il en PUBLIC, il le trouve, et voit qu'il pointe vers mbobak.mytable. Mais, mbobak.mytable n'existe pas, donc, il semble pour mytable en PUBLIC, et il y a la boucle.
Et en fait, si vous créez mytable, l'erreur disparaît:
Oui, je me rends compte que n'a pas vraiment entièrement du sens, comme, une fois que le public synonyme résolu à mbobak.mytable, et qui ne l'est pas, il me semble, il doit retourner une erreur ORA-942 "de la table ou de la vue n'existe pas", ce qui fait beaucoup plus de sens pour moi.
Mais, cela semble être la façon dont il fonctionne.
CQFD
Espère que ça aide.
OriginalL'auteur Mark J. Bobak
L'erreur que vous obtenez implique que
mydbowner.mytable
n'est pas, en fait une table. Ce n'retour?
OriginalL'auteur Justin Cave