Dénormalisation logique
La dénormalisation logique s'applique aux entités (ou classes) et attributs du modèle de données.
Lancer une dénormalisation logique
Pour dénormaliser le formalisme logique :
1. Faites un clic droit sur la base de données à laquelle est associé le modèle de données et sélectionnez Dénormaliser.
Un assistant apparaît.
2. Sélectionnez le type de dénormalisation (logique) et suivez les étapes de l'assistant. Voir Liste des assistants de dénormalisation logique.
Exemple de dénormalisation logique  
Supposons que vous vouliez transformer l'entité "Ligne de commande" en une association.
Pour transformer cette entité en association :
1. Faites un clic droit sur la base de données "Gestion des commandes" qui contient cette entité et sélectionnez Dénormaliser.
Un assistant apparaît.
2. Cliquez sur la dénormalisation Logique.
3. Cliquez sur Suivant.
4. Dans le champ Sélectionnez le type de dénormalisation, sélectionnez "Transformer une entité en association".
5. Cliquez sur Suivant.
6. Dans l'arbre de l'éditeur, cochez la colonne Périmètre face à l'entité "Ligne de commande" afin de la sélectionner.
*Vous avez la possibilité de sélectionner plusieurs entités lors d'une dénormalisation.
7. Cliquez sur Suivant.
Les options de dénormalisation apparaissent. Par défaut, le report des correspondances et la suppression des objets sources sont activés. Cela signifie que l'entité "Ligne de commande" va être supprimée et que le lien de correspondance avec la table "Ligne de commande" va être reporté sur l'association qui la remplace.
8. Cliquez sur Suivant.
L'éditeur affiche les changements occasionnés par cette dénormalisation. Vous pouvez voir que l'entité "Ligne de commande" va être supprimée et que l'association "Ligne de commande" va être créée.
*Lorsqu'une entité sélectionnée ne peut être transformée, l'éditeur vous en explique la raison.
Vous pouvez refuser une modification en décochant la case correspondante.
9. Validez les résultats en cliquant sur Suivant.
Cette transformation est définitive et sera prise en compte par la prochaine synchronisation.
A la fin de la dénormalisation, vous pouvez voir que l'association "Ligne de commande" qui remplace l'entité est désormais en correspondance avec la table "Ligne de commande".
*Si un objet est protégé, il n'est pas possible de le sélectionner pendant la dénormalisation.
Liste des assistants de dénormalisation logique
Transformer une association en entité 
Cette dénormalisation permet de transformer une association n-aire, quelles que soient ses multiplicités, en entité. Une association de multiplicité '*,1' est créée entre cette entité et les entités de l'association.
Avant
Après
Transformer une entité en association 
Cette dénormalisation permet de transformer une entité qui possède n associations binaires dont les rôles opposés sont de multiplicité '1' en association. Une nouvelle association n-aire de multiplicité * est créée entre ces entités.
Avant
Après
Transformer une généralisation en association 
Cette dénormalisation permet de transformer une généralisation entre deux entités en association. Une association de multiplicité *,1 est créée entre les deux entités, et la généralisation est supprimée.
 
Transformer une association en généralisation 
Cette dénormalisation permet de transformer une association 1,* en généralisation. Une généralisation est créée entre les deux entités, et l'association est supprimée.
 
Partition verticale d'une entité 
Cette dénormalisation permet de diviser une entité en plusieurs entités. Les entités obtenues se répartissent les attributs, les associations et les généralisations.
 
Partition horizontale d'une entité 
Cette dénormalisation permet de dupliquer une entité.
 
Partition horizontale et synchronisation en mode Logique > Physique
Prenons une entité "Catalogue". Après partition horizontale, cette entité donne deux entités "Catalogue-1" et "Catalogue-2".
Après synchronisation du mode Logique > Physique, les deux entités ont pour correspondance une table.
Si vous affichez les propriétés des correspondances, vous remarquez que les deux sont bidirectionnelles, ce qui signifie que entités et table se mettent à jour dans les deux sens de la synchronisation.
Si vous effectuez des modifications logiques sur ces entités puis relancez la synchronisation, l'éditeur affiche un signal sur la table cible ; en effet il ne sait quelle entité prendre pour effectuer les mises à jour.
Lorsque vous choisissez une entité, celle-ci est conservée comme entité de référence (par exemple Catalogue-1). L'autre entité sera conservée dans un seul sens, autrement dit Catalogue-2 pourra être mise à jour dans le modèle logique mais n'aura pas d'impact sur la table.
Fusion d'entités 
Cette dénormalisation permet de fusionner des entités.
 
Fusion d'entités ascendantes 
Cette dénormalisation permet de fusionner une entité avec son entité mère : tous les attributs et les liens sont reportés sur l'entité parente et l'entité fille est supprimée.
 
Fusion d'entités descendantes 
Cette dénormalisation permet de fusionner une entité avec son entité fille : tous les attributs et les liens sont reportés sur l'entité fille et l'entité parente est supprimée.
 
Copier/Coller d'attributs 
Cette dénormalisation permet de reporter des attributs d'une entité ou d'une association vers d'autres entités ou d'autres associations.