Téléchargement des produits


Version anglaise


 

Accès

Pour créer, modifier ou afficher les caractéristiques générales d'une contrainte d'intégrité d'une entité logique, choisir l'option de menu contextuel correspondante (ou le bouton équivalent) dans la boîte de dialogue Contraintes d'intégrité de l'entité logique.


Cette boîte de dialogue affiche la description d'une contrainte d'intégrité.


Les informations saisies

Nom de la contrainte

Ce champ permet de saisir le nom de la contrainte d'intégrité. Il s'agit d'un nom SQL (128 caractères) qui doit être unique dans le référentiel.

Saisie obligatoire.


Les cases à cocher

Syntaxe étendue

Case cochée

Le contrôle de saisie sur le nom de la contrainte est désactivé (minuscules, caractères spéciaux et espaces autorisés).

Case non cochée

Le nom de la contrainte doit respecter les standards de nommage Adélia.

Par défaut : case non cochée.


Contrainte active

Case cochée

La contrainte est active, c'est-à-dire qu'elle est prise en compte lors de la génération du MPD.

Si la définition de la contrainte est invalide, elle sera désactivée automatiquement.

Remarque : lors de la sauvegarde, pour les contraintes de type clé étrangère, si la contrainte est activée il vous sera proposé, si nécessaire, d'activer la contrainte unique correspondante.

Par défaut : case cochée pour les contraintes créées manuellement, non cochées pour les contraintes proposées automatiquement.


Les listes

Type de la contrainte

Il existe trois types de contrainte : Clé unique, Clé étrangère, Vérification.

Saisie obligatoire.


Contraintes de type vérification

Les informations saisies

Texte contrainte

Texte libre de la contrainte. Ce texte n'est pas vérifié, seuls les noms de propriété seront substitués.

Lors de la génération, le texte sera substitué en utilisant une règle analogue à la génération du niveau 2 : les identificateurs $PROPRIETE (PROPRIETE étant un nom de propriété de l'entité logique) seront substitués par le mot directeur ou le nom DDS de la propriété en fonction des options de génération.


Contraintes de type clé unique

Les listes

Zones clés

Cette liste affiche les zones de l'entité faisant partie de la clé unique. Les boutons + et - permettent d'ajouter une nouvelle zone ou de supprimer les zones sélectionnées.

Cliquez directement sur une zone pour afficher une liste déroulante permettant de sélectionner les propriétés logiques de l'entité.


Contraintes de type clé étrangère

Les informations saisies

Entité d'origine

Ce champ indique l'entité référencée par la clé étrangère. La saisie se fait à l'aide d'une boîte de sélection qui s'affiche via le bouton "..." attenant au champ de saisie.

La boîte propose les entités logiques ayant une clé unique pour identifiant, générées avec clé (c'est-à-dire ayant une clé primaire au sens SQL) ou ayant au moins une contrainte unique définie.


Les listes

Trigger ON UPDATE

Permet de définir l'action à effectuer quand la clé unique référencée est modifiée dans la table parente.

Les valeurs possibles sont :

NO ACTION

Pas de mise à jour dans la table parente s'il existe un enregistrement ayant la même valeur de clé dans la table dépendante.

RESTRICT

Pas de mise à jour dans la table parente s'il existe un enregistrement ayant la même valeur de clé dans la table dépendante, avec contrôle immédiat afin d'empêcher l'action éventuelle d'autres contraintes (ou déclencheurs) en cas de violation d'intégrité.

CASCADE

La mise à jour d'un enregistrement dans la table parente entraîne la mise à jour, dans la table dépendante, des enregistrements ayant la même valeur de clé.

Pour ces enregistrements, tous les champs "clé" sont mis à jour avec la nouvelle valeur de la clé correspondante dans la table parente.

SET NULL

La mise à jour d'un enregistrement dans la table parente entraîne la mise à jour, dans la table dépendante, des enregistrements ayant la même valeur de clé. Pour ces enregistrements, tous les champs "clé" acceptant une valeur nulle sont mis à jour avec cette valeur nulle.

SET DEFAULT

La mise à jour d'un enregistrement dans la table parente entraîne la mise à jour, dans la table dépendante, des enregistrements ayant la même valeur de clé. Pour ces enregistrements, tous les champs "clé" sont mis à jour avec la valeur par défaut de la colonne.

Par défaut : NO ACTION.


Trigger ON DELETE

Permet de définir l'action à effectuer quand la clé unique référencée est supprimée de la table parente.

Les valeurs possibles sont :

NO ACTION

Pas de suppression dans la table parente s'il existe un enregistrement ayant la même valeur de clé dans la table dépendante.

RESTRICT

Pas de suppression dans la table parente s'il existe un enregistrement ayant la même valeur de clé dans la table dépendante, avec contrôle immédiat afin d'empêcher l'action éventuelle d'autres contraintes (ou déclencheurs) en cas de violation d'intégrité.

CASCADE

La suppression d'un enregistrement dans la table parente entraîne la suppression, dans la table dépendante, des enregistrements ayant la même valeur de clé.

SET NULL

La suppression d'un enregistrement dans la table parente entraîne la mise à jour, dans la table dépendante, des enregistrements ayant la même valeur de clé. Pour ces enregistrements, tous les champs "clé" acceptant une valeur nulle sont mis à jour avec cette valeur nulle.

SET DEFAULT

La suppression d'un enregistrement dans la table parente entraîne la mise à jour, dans la table dépendante, des enregistrements ayant la même valeur de clé. Pour ces enregistrements, tous les champs "clé" sont mis à jour avec la valeur par défaut de la colonne.

Par défaut : NO ACTION.


Zones clés

Cette liste affiche les zones de l'entité faisant partie de la clé (colonne Clé), et les zones de la clé unique (colonne Référence) correspondantes dans l'entité référencée.

Les boutons + et - permettent d'ajouter une nouvelle zone ou de supprimer les zones sélectionnées.

Cliquez directement sur une zone pour afficher une liste déroulante permettant de sélectionner les propriétés logiques de l'entité. Lors de la saisie de la référence, seule les zones compatibles sont affichées.


Remarques sur les règles de mise à jour et de suppression (ON UPDATE et ON DELETE) :
 

Les différentes options possibles ne sont pas forcément supportées par tous les gestionnaires de bases de données.

- Si le gestionnaire de base de données ne supporte pas l'option RESTRICT, celle-ci est remplacée silencieusement par NO ACTION lors de la génération de la contrainte.

- Si le gestionnaire de base de données ne supporte pas l'option SET DEFAULT, celle-ci est remplacée silencieusement par SET NULL lors de la génération de la contrainte.

- Dans les autres cas d'erreur, la génération échouera avec un code indiquant que la fonction n'est pas supportée.

Les combinaisons possibles sont indiquées dans les tableaux suivants :


ON UPDATE


Access

DB2

Oracle

SQL Server

MySQL

PostgreSQL

AS/400

NO ACTION

Oui

Oui

Oui

Oui

Oui

Oui

Oui

CASCADE

Oui

-

-

Oui

Oui

Oui

-

RESTRICT

-

Oui

-

-

Oui

Oui

Oui

SET NULL

-

-

-

Oui

Oui

Oui

-

SET DEFAULT

-

-

-

Oui

-

Oui

-


ON DELETE


Access

DB2

Oracle

SQL Server

MySQL

PostgreSQL

AS/400

NO ACTION

Oui

Oui

Oui

Oui

Oui

Oui

Oui

CASCADE

Oui

Oui

Oui

Oui

Oui

Oui

Oui

RESTRICT

-

Oui

-

-

Oui

Oui

Oui

SET NULL

Oui

Oui

Oui

Oui

Oui

Oui

Oui

SET DEFAULT

-

-

-

Oui

-

Oui

Oui


Les boutons

Entrée / Créer / Modifier (validation)

Le bouton Entrée (en mode affichage) ferme la boîte de dialogue.

Le bouton Créer (en mode création) ou Modifier (en mode modification) valide la boîte de dialogue.

Les différentes informations composant la boîte sont contrôlées. Si toutes sont valides, la définition de la contrainte d'intégrité est mise à jour dans la base de données avant la fermeture de la boîte ; sinon un message d'erreur est affiché.


Annuler

Fermeture de la boîte de dialogue sans valider les choix faits.

Par contre, les traitements effectués sur les contraintes d'intégrité ne sont pas annulés.

Raccourci-clavier : Echap.


↑ Haut de page

  • Aucune étiquette