Cours sur les contraintes avancées sous Microsoft Access

Extrait du cours sur les contraintes avancées sous Microsoft Access

Dans l’exemple, l’utilisateur tente de saisir la donnée directement dans la table. N’ayez pas peur, ce mécanisme de contrainte est aussi valable lorsque l’utilisateur opère sa saisie depuis un formulaire ou que celle-ci est automatisée par une requête ou par du code VBA.
La propriété Message si Erreur permet quant à elle de définir le message qui sera affiché si la contrainte n’est pas respectée. Le but étant d’obtenir quelque chose de plus explicite que l’image ci-dessus. Toutefois, étant donné que dans bien des cas, le développeur gère lui-même ces propres messages d’alerte dans son code VBA, cette propriété dispose donc d’un intérêt limité.
Malheureusement, l’efficacité de la propriété ValideSi se limite exclusivement à tester la valeur de la donnée saisie par rapport à une règle de gestion basique. Ainsi, il est possible de vérifier la taille d’un texte, l’appartenance d’une date à un intervalle, la supériorité d’un nombre à une constante, etc. Par contre il est impossible de faire référence aux données déjà inscrites dans la base.
Prenons l’exemple d’une table tblLimite qui définirait le montant maximum autorisé pour la saisie des factures. Cette règle de gestion n’a pas vraiment de sens dans la vie réelle mais permet d’énoncer clairement mes propos.
La définition suivante de la propriété ValideSi paraît à priori juste, tout du moins du point de vue du sens :
[TTCFacture]<=(SELECT Limite FROM tblLimite)
Pourtant, elle est refusée par Microsoft Access.
Pourquoi ? Tout simplement, parce qu’il est impossible de faire référence à une autre donnée issue de la base dans la propriété ValideSi d’un champ.
II – ADODB et CONSTRAINT
Pour passer outre la limitation de la clause ValideSi vue plus haut, il est nécessaire de construire la contrainte manuellement à l’aide d’une instruction SQL après la création de la table à l’aide de l’instruction suivante :
Il est plus intéressant de la faire après la création de la table tout simplement car cela vous permet de bénéficier auparavant des assistants pour mettre en place vos champs,vos clés et vos index.
…..

Sommaire: Cours sur les contraintes avancées sous Microsoft Access

I – Les contraintes ValideSi et leur limite
II – ADODB et CONSTRAINT
III – Contraintes par jointure
IV – Contraintes calculées
V – Contraintes CHECK (X=TRUE)
VI – Suppression des contraintes
VII – Modification d’une contrainte
VIII – Capture dans un formulaire
VIII-A – Affichage personnalisé
VIII-B – Afficher la définition de la contrainte
IX – Conclusion

Si le lien ne fonctionne pas correctement, veuillez nous contacter (mentionner le lien dans votre message)
Cours sur les contraintes avancées sous Microsoft Access (308 KO) (Cours PDF)
Cours sur les contraintes

Télécharger aussi :

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *