Chapter 9 Gestion des Modèles Orientés Objet


Définition d'une correspondance pour une classe

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 l'onglet Correspondances d'une feuille de propriétés de classe pour pouvoir définir une correspondance pour cette classe. Cet onglet contient les sous-onglets suivants :

Sous-onglet Sources de la classe

Le sous-onglet 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.

Pour plus d'informations sur l'outil Ajouter des objets, reportez-vous au chapitre "Editeur de correspondances" dans le Guide des fonctionnalités générales .

Sous-onglet Correspondances des attributs

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.

Pour plus d'informations sur les outils de la barre d'outils, reportez-vous au chapitre "Editeur de correspondances" dans le Guide des fonctionnalités générales .

Sous-onglet Correspondances des opérations

Le sous-onglet 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".

Sous-onglet Critères

Le sous-onglet Critères permet de spécifier un critère de jointure entre les tables ou vues source. Par exemple  ID.EMPLOYE < 100

Requêtes SQL

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 l'onglet.

Modification du template de requête

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) 2006. Sybase Inc. All rights reserved.