DOCUMENTATION EN LIGNE
DE WINDEVWEBDEV ET WINDEV MOBILE

Aide / WLangage / Gestion des bases de données / HFSQL / Fonctions HFSQL
  • Gestion de l'intégrité activée
  • Désactiver les règles d'intégrité
  • En mode HFSQL Client/Serveur
WINDEV
WindowsLinuxUniversal Windows 10 AppJavaEtats et RequêtesCode Utilisateur (MCU)
WEBDEV
WindowsLinuxPHPWEBDEV - Code Navigateur
WINDEV Mobile
AndroidWidget AndroidiPhone/iPadWidget IOSApple WatchMac CatalystUniversal Windows 10 App
Autres
Procédures stockées
Active ou désactive la gestion d'une contrainte d'intégrité sur une liaison d'un fichier de données.
Remarque : Par défaut, toutes les règles d'intégrité définies dans la description de l'analyse sont actives.
Exemple
// Désactiver le test des cardinalités sur la liaison entre une commande et un client
HGèreIntégrité(ClientCommande, hCardinalité, Faux)
// Désactiver les règles d'intégrité sur tous les fichiers de données de l'application
HGèreIntégrité("*", "*", hCardinalité + hEnModification + hEnSuppression, Faux)
// équivalent à : hGèreIntégrité(Faux)
// Désactiver les règles d'intégrité sur la liaison entre une commande et un client
// avec utilisation d'une connexion
CxFichierSource est une Connexion
CxFichierRelié est une Connexion
 
HGèreIntégrité(CxFichierSource, CxFichierRelié, ClientCommande, ...
hCardinalité + hEnModification + hEnSuppression, Faux)
Syntaxe

Activer ou désactiver la gestion d'une contrainte d'intégrité en spécifiant le nom du fichier de données Masquer les détails

<Résultat> = HGèreIntégrité([<Liaison à manipuler>] [, <Fichier de données>] [, <Contrainte d'intégrité>] , <Mode de gestion>)
<Résultat> : Booléen
Ancienne gestion de l'intégrité (avant utilisation de la fonction HGèreIntégrité) :
  • Vrai si la gestion de l'intégrité était active,
  • Faux si la gestion de l'intégrité était inactive.
Si <Liaison à manipuler> = "*" ou si <Fichier de données> = "*" , <Résultat> est à Vrai si dans l'ancien mode de gestion de l'intégrité, l'intégrité était activée sur au moins une liaison ou au moins un fichier de données.
<Liaison à manipuler> : Chaîne de caractères optionnelle
Nom de la liaison concernée (nom composé des différents fichiers de données participant à la liaison).
Si ce nom n'est pas spécifié ou est égal à "*", la nouvelle gestion de l'intégrité s'applique à toutes les liaisons définies dans l'analyse.
<Fichier de données> : Chaîne de caractères optionnelle
Nom du fichier de données manipulé.
Si ce nom n'est pas spécifié ou est égal à "*", la nouvelle gestion spécifiée s'applique à tous les fichiers de données intervenant dans la liaison (y compris les alias).
Si le paramètre <Liaison à manipuler> correspond à "*", ce paramètre doit également correspondre à "*". En effet, il n'est pas possible d'activer ou de désactiver l'ensemble des contraintes d'intégrité de toutes les liaisons d'un fichier de données spécifique.
<Contrainte d'intégrité> : Constante ou combinaison de constantes optionnelle de type Entier
Permet de déterminer les contraintes d'intégrité à gérer. Si ce paramètre n'est pas spécifié, la nouvelle gestion s'applique à toutes les contraintes de la liaison.
hCardinalitéTest des cardinalités de la liaison.
hEnModificationRègle d'intégrité appliquée pendant une modification.
hEnSuppressionRègle d'intégrité appliquée pendant une suppression.
<Mode de gestion> : Booléen
  • Vrai si la contrainte d'intégrité est activée,
  • Faux si cette gestion doit être désactivée. Si seul ce paramètre est précisé, le mode de gestion spécifié s'applique à tous les fichiers de données.

Activer ou désactiver la gestion d'une contrainte d'intégrité en spécifiant la connexion du fichier de données Masquer les détails

<Résultat> = HGèreIntégrité(<Connexion fichier de données source> [, <Connexion fichier de données relié>] , <Description de la liaison> [, <Contrainte d'intégrité>] , <Mode de gestion>)
<Résultat> : Booléen
Ancienne gestion de l'intégrité (avant utilisation de la fonction HGèreIntégrité) :
  • Vrai si la gestion de l'intégrité était active,
  • Faux si la gestion de l'intégrité était inactive.
<Connexion fichier de données source> : Chaîne de caractères ou variable de type Connexion
Connexion à laquelle appartient le fichier de données source de la liaison. Cette connexion correspond :
<Connexion fichier de données relié> : Chaîne de caractères optionnelle ou variable de type Connexion
Connexion à laquelle appartient le fichier de données relié de la liaison. Cette connexion correspond : Si ce paramètre n'est pas précisé, les deux fichiers de données appartiennent alors à la même connexion (paramètre <Connexion fichier de données source>).
<Description de la liaison> : Variable de type Description de liaison
Nom de la variable de type Description de liaison contenant les caractéristiques de la liaison.
<Contrainte d'intégrité> : Constante ou combinaison de constantes optionnelle de type Entier
Contraintes d'intégrité à gérer. Si ce paramètre n'est pas spécifié, la nouvelle gestion s'applique à toutes les contraintes de la liaison.
hCardinalitéTest des cardinalités de la liaison.
hEnModificationRègle d'intégrité appliquée pendant une modification.
hEnSuppressionRègle d'intégrité appliquée pendant une suppression.
<Mode de gestion> : Booléen
  • Vrai si la contrainte d'intégrité est activée,
  • Faux si cette gestion doit être désactivée. Si seul ce paramètre est précisé, le mode de gestion spécifié s'applique à tous les fichiers de données.
Remarques

Gestion de l'intégrité activée

Si une opération sur un fichier de données entraîne la violation d'une contrainte d'intégrité sur une règle active, l'opération n'est pas effectuée et provoque l'erreur de la fonction. La fonction HErreurIntégrité renvoie alors Vrai.
Remarque : Seules les fonctions HAjoute, HModifie, HSupprime, HRaye et HEcrit peuvent générer une erreur d'intégrité.

Désactiver les règles d'intégrité

Désactiver une règle d'intégrité implique la possibilité de violer les contraintes énoncées lors de la description des fichiers de données dans l'éditeur d'analyses. Désactiver une règle d'intégrité n'est donc pas une opération insignifiante : elle doit être utilisée à bon escient.
WEBDEV - Code ServeurHFSQL Client/Serveur

En mode HFSQL Client/Serveur

L'utilisation de la syntaxe HGèreIntégrité(<Gestion>) influe sur le comportement de tous les serveurs HFSQL (que l'ouverture de la connexion soit antérieure ou postérieure à l'appel de la fonction HGèreIntégrité).
L'utilisation de la fonction HGèreIntégrité en précisant le nom de la liaison n'est possible que si :
  • La liaison est décrite dans l'analyse du client (ou par la fonction HDécritLiaison).
  • Les deux fichiers de données reliés par cette liaison sont situés sur le même serveur HFSQL.
Si l'appel à la fonction HGèreIntégrité est effectuée avant que les fichiers de données soient en mode Client/Serveur (par exemple, si la fonction HChangeConnexion est utilisée), le serveur active la règle d'intégrité.
Un droit est associé à la gestion de l'intégrité sur la base de données : hDroitGèreIntégrité. Une erreur de droit apparaît lorsque l'utilisateur tente de violer la contrainte d'intégrité (par exemple lors de l'utilisation des fonctions HAjoute, HModifie, ...).
Composante : wd290hf.dll
Version minimum requise
  • Version 9
Documentation également disponible pour…
Commentaires
Cliquez sur [Ajouter] pour publier un commentaire

Dernière modification : 25/05/2022

Signaler une erreur ou faire une suggestion | Aide en ligne locale