2009-12-07 3 views
0

J'ai été la recherche sur le web pendant deux jours et ne peut toujours pas trouver un moyen de générer le code DDL avec des synonymes publics. Serait très reconnaissant pour tout conseil.Oracle Data Modeller et les synonymes

Répondre

1

Je pense que vous avez affaire à deux usages différents et distincts du terme « synonyme »:

1) Dans la modélisation logique (entité), des synonymes sont des noms commerciaux alternatifs pour une entité, par exemple l'entité CLIENT peut avoir des synonymes ACHETEUR et CLIENT.

2) Dans le modèle physique (base de données), les synonymes publics sont utilisés pour supprimer le besoin de spécifier le schéma qui possède une table. Généralement, le synonyme et le nom de la table sont les mêmes, par ex. "CREATE PUBLIC SYNONYM clients pour MYSCHEMA.CUSTOMERS;"

Il serait très inhabituel de vouloir des synonymes publics générés dans la base de données pour les synonymes métier définis dans le modèle logique.

+0

AH, maintenant je vois. Et à quoi sert cette fonctionnalité? Est-ce que quelqu'un crée des entités séparées pour le même objet, crée des synonymes pour chacun d'entre eux et est vraiment surpris quand Data Modeler dit que je pense que ces entités devraient être fusionnées parce qu'elles ont un nom/synonyme en commun? Je ne peux que l'admettre utile si nous traitons un gros-gros schéma. – unb

+0

Le fait est que la modélisation logique consiste à comprendre le * business *. Si une partie de l'organisation parle de 'Clients' et qu'une autre partie parle de 'Clients', alors il est utile de le savoir. Cependant, nous nous attendons à voir une seule entité dans le modèle. – APC

+0

Alors que le point au sujet des synonymes est que je en tant qu'utilisateur standard de bog peut se référer à la table EMP appartenant à SCOTT comme 'EMP' au lieu de' SCOTT.EMP'. – APC