2009-07-29 10 views
0

J'ai créé un synonyme public comme suggéré dans mon autre question sur la création d'une vue au niveau du système. Cela dit, j'ai créé un synonyme public hors de la vue, de sorte que je n'ai plus besoin de me connecter au domaine individuel. Mon problème maintenant est comment créer un type principal de synonyme public pour capturer tous ces synonymes que j'ai créés plus tôt. Dans quelle mesure l'instruction "for" peut-elle être utilisée? Au niveau du système, j'exécuterai une requête pour chaque domaine où MYVIEW est créé: Créer ou remplacer le synonyme public domain1_myview pour domain1.myview; Créer ou remplacer le nom de domaine public domain2_myview pour domain2.myview; Créer ou remplacer un synonyme public domain3_myview pour domain3.myview;Création d'un synonyme public au niveau du système

Puis j'ai 3 synonyme public ci-dessus.

J'essayé d'écrire la déclaration (en désespoir de cause - non pas comme expert) comme ci-dessous dans l'espoir d'avoir un seul Master_MYVIEW mais a échoué: Créer ou remplacer synonyme public MASTER_MYVIEW pour (select * from union domain1_myview tous select * from union domain2_myview tous select * from domain3_myview);

L'erreur avec ce qui précède: « ORA-00995: manquant ou identifiant de synonyme non valide » quelqu'un

Hope peut me aider à cette tâche. Bonne journée.

+0

J'ai aussi try: CRÉER OU REMPLACER SYNONYM PUBLIC MASTER_MYVIEW pour (sélectionnez * from domain1.myview union tout sélectionner * from domain2.myview) et ainsi de suite. Mais j'ai eu une erreur: "privilège insuffisant". Les gars ordinaires, aidez-moi ici. Appréciez toute réponse. – Fadzil

+0

Salut les gars ... Je suis toujours en attente de réponse de renseignement de l'un de vous là-bas ... vraiment désespéré ici. Je suis hors d'option et j'ai aussi besoin de savoir s'il est possible ou non de créer un synonyme principal à partir du synonyme que j'ai mentionné plus tôt. Peut-il être autre que le propriétaire PUBLIC et le SYNONYME PUBLIC? – Fadzil

Répondre

1

Essayez de créer une vue appelée MASTER_MYVIEW premier (vous devrez peut-être traiter avec des privilèges là aussi):

create view master_myview as select ...; 

Ensuite, créez un synonyme public pour cette nouvelle vue:

create or replace public synonym master_myview for <owner>.master_myview; 
+0

La restriction avec prévilege insuffisante est due à mon octroi. SUBVENTION SÉLECTIONNER TOUT TABLEAU D'ADMINISTRATION (par exemple, admin est l'utilisateur) – Fadzil

Questions connexes