Oracle: est-il possible de créer un synonyme pour un schéma?
Tout d'abord
Je suis un oracle débutant, et je n'ai pas de local oracle gourou pour m'aider.
Voici mon problème /question
J'ai quelques scripts SQL qui doivent être libérés d'un certain nombre d'instances Oracle.
Les scripts de créer des procédures stockées.
Le schéma dans lequel les procédures stockées sont créés est différent du schéma qui contient les tables à partir de laquelle les procédures stockées sont la lecture.
Sur les différentes instances, le schéma contenant les tables des noms différents.
Évidemment, je ne veux pas avoir à modifier les scripts pour les faire sur mesure pour les différentes instances.
Il a été suggéré que la solution peut être de créer des synonymes.
Est-il possible de définir un synonyme pour le schéma de la table sur chaque instance, et d'utiliser le synonyme dans mes scripts?
Existe-il d'autres façons de faire ce travail sans modifier les scripts de tous les temps?
Merci pour toute aide.
Vous devez vous connecter pour publier un commentaire.
Il souhaitez de l'aide pour savoir quelle version d'Oracle, mais comme de 10g--Non, vous ne pouvez pas faire un synonyme pour un schéma.
Vous pouvez créer des synonymes pour les tables, ce qui vous permettra de ne pas spécifier le schéma dans les scripts. Mais cela signifie que les synonymes doivent être identiques sur tous les cas à être d'une quelconque utilité...
L'autre option serait de remplacer le schéma de références avec des variables, de sorte que lorsque le script est exécuté, l'utilisateur est invité à entrer les noms de schéma. Je préfère cette approche, parce que c'est moins de travail. Voici un exemple qui serait à l'œuvre dans SQLPlus:
La beauté de ceci est que la personne qui exécute le script ne serait invité une fois pour chaque variable, et pas à chaque fois que la variable est rencontré. Donc, soyez prudents sur les fautes de frappe 🙂
&&schema1..vw_my_view
. Les périodes sont utilisées pour indiquer la fin des noms de variables par défaut, donc vous avez besoin de deux lors de leur utilisation pour le schéma: un pour indiquer la fin de la variable et une seconde pour agir comme le schéma/objet séparateur.Oui, vous pouvez créer un synonyme pour un schéma.
Si vous disposez déjà d'un schéma nommé ORA...
Plus d'informations ici: http://oracle-network.com/database/how-to-create-synonym-for-a-schema/
Oui, il y a une façon cachée pour créer un schéma de synonyme.
Il y a un paramètre caché
_enable_schema_synonyms
. C'est à false par défaut , mais vous pouvez l'activer et créer un synonyme.