Jean-Pierre Giroudon wrote:
Bonjour
je débute sur la base de donnée, et je voudrais que sur un champs du formulaire, il soit impossible de rentrer une données existant déjà dans la table ( pour le même champs)
avec un  message du style : Entrée déjà existante n° id

Lorsque chaque enregistrement de ta base est composé de plusieurs champs, la seule manière d'imposer une telle contrainte serait de faire une macro qui prendrait la chaîne ou valeur à saisir en paramètre et la rechercherait dans les données existantes du champ, puis refuserait de l'enregistrer si elle existait déjà en combinaison avec les autres données.

Dans une table avec un seul champ, cela est faisable en désignant le champ comme UNIQUE (ou étant la clé primaire) ou si dans une base HSQLDB, avec l'option IDENTITY.

Bien entendu, on peut faire en sorte que plusieurs champs soient considérés comme formant l'unicité, par exemple dans le cas d'un champ Nom et Prénom, mais dans ce cas, s'il y a une seule différence dans la combinaison présentée,par exemple lors d'une faute de frappe, elle sera acceptée et enregistrée dans la base comme étant différente, donc unique.

Il faut aussi bien réfléchir pour savoir si ce que tu pense être unique l'est vraiment, car il n'y a rien de pire que d'imposer de telles contraintes pour découvrir ensuite que finalement la combinaison que l'on s'était dit unique peut en réalité se produire plus d'une fois, même si cela est très rare.

Alex

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Répondre à