Utilisation des contraintes du serveur
Remonter à Manipulation des composants champ - Index
La plupart des bases de données SQL d'exploitation utilisent les contraintes pour imposer des conditions sur les valeurs possibles d'un champ. Par exemple, un champ peut ne pas autoriser de valeurs NULL, peut exiger qu'une valeur soit unique pour une colonne et que ces valeurs soient comprises entre 0 et 150. Comme vous devez dupliquer de telles conditions dans vos applications client, les ensembles de données client et les ensembles de données BDE possèdent une propriété ImportedConstraint permettant de diffuser localement les contraintes du serveur.
ImportedConstraint est une propriété en lecture seule qui spécifie une clause SQL limitant les valeurs de champ d'une certaine manière. Par exemple :
Value > 0 and Value < 100
Ne modifiez pas la valeur de ImportedConstraint, sauf si vous voulez modifier des commandes SQL non standard ou propres à un serveur qui ont été importées en tant que commentaires, car le moteur de bases de données n'a pas pu les interpréter.
Pour ajouter des contraintes supplémentaires sur la valeur d'un champ, utilisez la propriété CustomConstraint. Les contraintes personnalisées sont imposées en sus des contraintes importées. Si les contraintes du serveur changent, la valeur de ImportedConstraint change aussi, mais les contraintes introduites dans la propriété CustomConstraint persistent.
La suppression des contraintes de la propriété ImportedConstraint n'entraîne pas la validité des valeurs de champs qui sont en violation avec ces contraintes. Si les contraintes sont supprimées, cela signifie qu'elles seront testées au niveau du serveur au lieu de l'être localement. Lorsque les contraintes sont vérifiées localement, le message d'erreur spécifié dans la propriété ConstraintErrorMessage apparaît au moment où les violations sont détectées (sinon, les messages d'erreur affichés proviennent du serveur).