PC SOFT

DOCUMENTATION EN LIGNE
DE WINDEV, WEBDEV ET WINDEV MOBILE

  • Présentation
  • Liaison parallèle
  • Définition
  • Remarques
  • Liaison facultative
  • Définition
  • Liaison de complément
  • Définition
  • Liaison partagée
  • Définition
  • Liaison partagée de cardinalité 0,N - 0,1
  • Liaison partagée de cardinalité 0,N - 1,1
  • Liaison partagée de cardinalité 1,N - 0,1
  • Liaison partagée de cardinalité 1,N - 1,1
  • Liaison complexe
  • Définition
  • Exemple de liaison complexe
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadApple WatchUniversal Windows 10 AppWindows Mobile
Autres
Procédures stockées
Présentation
Les liaisons entre les fichiers de données peuvent être de plusieurs types :
Liaison parallèle

Définition

Dans le cas d'une liaison parallèle, chaque enregistrement d'un fichier de données ("Produit") est relié à un enregistrement dans un autre fichier de données ("Information"), et réciproquement.
Pour gérer une liaison parallèle, l'identifiant du fichier de données "Produit" est copié dans le fichier de données "Information". Cet identifiant est également clé unique dans le fichier de données "Information".
Le fichier de données "Produit" est le fichier propriétaire. Le fichier de données "Information" est le fichier membre.

Remarques

  • Ce type de liaison est rare car les deux fichiers de données peuvent être regroupés en un seul.
  • Le parallélisme des enregistrements dans le fichier de données est respecté si les opérations suivantes sont exécutées simultanément sur les deux fichiers de données :
    • création d'un enregistrement
    • suppression d'un enregistrement
    • réindexation avec compactage
Liaison facultative

Définition

Dans le cas d'une liaison facultative, chaque enregistrement d'un fichier de données ("Catégorie") a aucun ou un seul enregistrement associé dans un autre fichier de données ("Groupe"). Chaque enregistrement de l'autre fichier de données ("Groupe") a aucun ou un seul enregistrement associé dans le premier fichier de données ("Catégorie").
Une liaison facultative est réalisée en copiant l'identifiant de chacun des fichiers des données dans l'autre fichier de données.
Liaison de complément

Définition

Dans le cas d'une liaison de complément, chaque enregistrement d'un fichier de données("Produit") a aucun ou un seul enregistrement associé dans un autre fichier de données ("Détail"). Chaque enregistrement de l'autre fichier de données ("Détail") a nécessairement un enregistrement associé dans le premier fichier de données ("Produit").
Les liaisons de complément sont assez fréquentes. Elles sont notamment utilisées lorsqu'un enregistrement peut avoir des compléments d'informations optionnels.
Pour gérer une liaison de complément, la clé du fichier de données "Produit" est copiée dans le fichier de données "Détail". Pour assurer la cardinalité maximale de 1, elle reste clé unique. L'unicité de cette clé interdit l'insertion de plus d'un enregistrement dans "Détail" pour un enregistrement de "Produit".
Le fichier propriétaire est "Produit", le fichier membre est "Détail".
Liaison partagée

Définition

Dans le cas d'une liaison partagée, un même enregistrement dans un fichier de données ("Fournisseur") peut être partagé par plusieurs enregistrements dans un autre fichier de données ("Produit").
Pour gérer une liaison partagée, la clé du fichier de données "Fournisseur" est copiée dans le fichier de données "Produit". Elle devient clé multiple pour accélérer la vérification de l'intégrité.
Le fichier propriétaire est "Fournisseur", le fichier membre est "Produit".
Selon la cardinalité, il est possible de distinguer quatre types de liaisons partagées :
  • Liaison partagée de cardinalité 0,n - 0,1
  • Liaison partagée de cardinalité 0,n - 1,1
  • Liaison partagée de cardinalité 1,n - 0,1
  • Liaison partagée de cardinalité 1,n - 1,1

Liaison partagée de cardinalité 0,N - 0,1

Avec ce type de liaison :
  • un propriétaire peut ne pas avoir de membre (un fournisseur n'a pas obligatoirement de produit).
  • un membre peut ne pas avoir de propriétaire (un produit n'a pas obligatoirement de fournisseur).

Liaison partagée de cardinalité 0,N - 1,1

Avec ce type de liaison :
  • un propriétaire peut ne pas avoir de membre (un fournisseur peut n'avoir aucun produit).
  • chaque membre a un seul propriétaire (chaque produit a un seul fournisseur).
Remarque : Ce type de liaison est fréquente. WINDEV permet de créer automatiquement les fenêtres permettant de gérer les fichiers liés par un liaison de type 0,N - 1,1.

Liaison partagée de cardinalité 1,N - 0,1

Avec ce type de liaison :
  • chaque propriétaire a au moins un membre (un fournisseur a au moins un produit).
  • un membre peut ne pas avoir de propriétaire (un produit peut avoir aucun fournisseur).

Liaison partagée de cardinalité 1,N - 1,1

Avec ce type de liaison :
  • chaque propriétaire a au moins un membre (chaque fournisseur a au moins un produit).
  • chaque membre a un seul propriétaire (chaque produit a un seul fournisseur).
Liaison complexe

Définition

Dans le cas d'une liaison "complexe", il est nécessaire de gérer un fichier de liaison appelé fichier de relation.
Le fichier de relation sera automatiquement créé. Il contiendra une clé unique composée des deux clés des fichiers de données reliés.
Le fichier de relation peut également contenir des informations spécifiques à la liaison.
Une liaison complexe se décompose alors en deux liaisons de type partagé.

Exemple de liaison complexe

Une commande (fichier "Commande") peut contenir un ou plusieurs produits. Un produit (fichier "Produit") peut être utilisé dans plusieurs commandes.
Dans ce cas, il faut avoir un fichier de liaison (fichier "LigneCommande").
Le fichier "LigneCommande" contient :
  • une clé unique composée des clés de Produit et de Commande.
  • le nombre de produits commandés.
Les liaisons entre fichiers sont les suivantes :
Liste des exemples associés :
WD Lien reflexif Exemples didactiques (WINDEV) : WD Lien reflexif
[ + ] Cet exemple illustre la gestion d'un lien réflexif avec les fonctions WLangage.
Dans cet exemple, nous abordons les principaux thèmes suivants :
1/ Remplissage d'un champ avec contenu HFSQL (gestion automatique du lien réflexif).
2/ Remplissage par programmation.
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire