Chapter 9 Gestion des Modèles Orientés Objet
La mise en correspondance d'une classe permet d'identifier les objets physiques (tables ou vues) utilisés pour stocker les instances de cette classe dans une base de données relationnelle. Une fois que les tables et vues source sont identifiées et mises en correspondance avec les classes du modèle courant, vous pouvez définir les correspondances entre les attributs et les colonnes de table.
Vous devez utiliser la page Correspondances d'une feuille de propriétés de classe pour pouvoir définir une correspondance pour cette classe.
Vous ne pouvez pas définir de correspondance pour une classe si vous ne sélectionnez pas de source de données dans la page Correspondances de la feuille de propriétés de classe. Lorsque vous déclarez une correspondance entre une source de données et une classe, vous indiquez les modèles dans lesquels les objets seront stockés.
Outil | Description |
---|---|
Ajouter une correspondance entre l'objet courant et une source de données existante. La première fois que vous définissez une correspondance pour un objet, la liste déroulante Correspond à est vide, vous devez alors ajouter une correspondance avec une source de données avant de pouvoir mettre en correspondance des objets du modèle courant avec ceux de la source de données | |
Supprime la correspondance pour la source de données | |
Modifie les propriétés de la source de données sélectionnée |
La page Sources de la classe permet d'associer plusieurs tables ou vues de la source de données à la classe courante. Ces tables et vues vont stocker les classes dans la base de données relationnelles.
Vous pouvez utiliser l'outil Ajouter des objets pour sélectionner des tables ou vues dans les modèles physiques de données ouverts dans l'espace de travail courant.
Chaque attribut peut être associé à une colonne des tables ou vues sélectionnées afin de spécifier où et comment les valeurs d'attributs sont stockées dans la base de données. Lorsqu'une classe hérite d'une classe non générée via un lien de généralisation, les attributs de la classe parent s'affichent dans la boîte de dialogue Sélection afin de vous permettre de créer une correspondance avec ces attributs hérités. Les attributs d'une classe dérivée non générée s'affichent également dans la boîte de dialogue Sélection. Vous pouvez utiliser les outils suivants pour définir des attributs de correspondance.
Icône | Outil | Description |
---|---|---|
Ajouter une correspondance | Permet de sélectionner les attributs de la classe courante qui seront mis en correspondance avec des colonnes dans la table ou vue source. Lorsque la classe courante hérite d'un parent non généré ou est dérivée d'une classe non générée, les attributs du parent ou de la classe dérivée s'affichent dans la boîte de dialogue de sélection. Une fois que vous avez sélectionné les attributs, vous pouvez utiliser la liste déroulante dans la colonne Correspond à pour sélectionner les colonnes correspondantes dans la table ou vue source | |
Créer à partir des sources | Permet de copier des colonnes depuis les tables ou vues depuis la source de données dans la classe courante. Le nom, le code, la description, l'annotation et le commentaire sont copiés et les types de données sont convertis afin d'être adaptés au modèle courant | |
Générer des correspondances | Permet de générer automatiquement une correspondance entre les attributs et colonnes ayant le même nom ou code dans la source de données et dans le modèle courant |
Le bouton Points de suspension dans la colonne Correspond à permet d'afficher la boîte de dialogue Editeur SQL afin de personnaliser l'expression source pour l'attribut.
La page Correspondances des opérations permet d'associer une requête SQL à une opération d'une classe.
Pour plus d'informations sur les correspondances d'opération, reportez-vous à la section "Mise en correspondance d'une opération".
La page Critères permet de spécifier un critère de jointure entre les tables ou vues source. Par exemple ID.EMPLOYE < 100
Les requêtes SQL suivantes sont automatiquement calculées pour déterminer de quelle façon les données des instances de la classe sont extraites ou stockées dans la base de données :
select ADRESSE.LIGNE1 "LIGNE1", ADRESSE.LIGNE2 "LIGNE2", ADRESSE.VILLE "VILLE", ADRESSE.CDEPOSTAL "CDEPOSTAL", ADRESSE.PAYS "PAYS" from ADRESSE
insert into ADRESSE( ADRESSE.LIGNE1, ADRESSE.LIGNE2, ADRESSE.VILLE, ADRESSE.CDEPOSTAL, ADRESSE.PAYS) values ( %LIGNE1%, %LIGNE2%, %VILLE%, %CDEPOSTAL%, %PAYS%)
update ADRESSE set ADRESSE.LIGNE1 = %LIGNE1%, ADRESSE.LIGNE2 = %LIGNE2%, ADRESSE.VILLE = %VILLE%, ADRESSE.CDEPOSTAL = %CDEPOSTAL%, ADRESSE.PAYS = %PAYS%
delete line* from ADRESSE
Chaque instruction est automatiquement générée. Si vous modifiez une instruction, elle devient une instruction utilisateur et ne peut plus être automatiquement calculée et ce, même si vous modifiez la correspondance. Vous pouvez distinguer qu'une instruction est une instruction utilisateur quand l'outil Redéfini par l'utilisateur est enfoncé dans la barre d'outils.
Vous pouvez alors restaurer l'expression calculée en cliquant sur l'outil Redéfini par l'utilisateur, ce qui a pour effet de supprimer toute expression non calculée de la page.
La syntaxe des requêtes SQL provient d'un template prédéfini. Vous pouvez personnaliser la syntaxe de la requête en modifiant les entrées SelectStatement, InsertStatement, UpdateStatement et DeleteStatement dans la catégorie Profile de l'éditeur de langage objet ou de définitions étendues de modèle.
Pour plus d'informations sur la personnalisation des templates, reportez-vous à la section "Définition de templates" dans le chapitre "Guide de référence de la génération" dans la Documentation utilisateur avancée .
Copyright (C) 2005. Sybase Inc. All rights reserved. |