Interdire la saisie de plus ou moins d'un certain nombre fixé [Résolu]

Messages postés
17
Date d'inscription
vendredi 8 décembre 2000
Statut
Membre
Dernière intervention
3 juillet 2012
- - Dernière réponse : cherine86
Messages postés
17
Date d'inscription
vendredi 8 décembre 2000
Statut
Membre
Dernière intervention
3 juillet 2012
- 3 juil. 2012 à 10:19
Bonjour,
J'aimerai savoir est ce que c'est possible de limiter un champ
Dans le sens si je déclare par exemple:
Un champ Varchar(5) avec un code SQL en plus
L'utilisateur ne peut saisir que 5 caractères PAS PLUS PAS MOINS
Par exemple:
S'il essaye de saisir : 4 caractères ,3 ,2 ou 1 un message d'erreur est alors affiché
Et s'il saisit plus de 5 caractères, un message d'erreur s'affiche aussi
Merci de me proposer une solution :)
Afficher la suite 

3 réponses

Meilleure réponse
Messages postés
17
Date d'inscription
vendredi 8 décembre 2000
Statut
Membre
Dernière intervention
3 juillet 2012
3
Merci
Bonjour
je reviens avec une solution qu'une collègue de travail a trouvé:


DELIMITER $$
CREATE TRIGGER trigger1
BEFORE INSERT
ON `budget`
FOR EACH ROW
BEGIN
    if CHAR_LENGTH(NEW.`Cod_Ag`) <> 5 or (select NEW.`Cod_Ag`) not regexp '[0-9][0-9][0-9][0-9][0-9]' then
    call something;
END IF;
    if CHAR_LENGTH(NEW.`Cod_Ind`) <> 7 or (select NEW.`Cod_Ind`) not regexp '[A-Z][A-Z][A-Z][0-9][0-9][0-9][0-9]' then
    call something;
      END IF;
END$$
DELIMITER;



Bonne continuation à tous et bon courage

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 210 internautes nous ont dit merci ce mois-ci

Commenter la réponse de cherine86
Messages postés
219
Date d'inscription
mercredi 26 octobre 2011
Statut
Membre
Dernière intervention
22 juin 2017
8
0
Merci
Bonjour,

L'utilisateur ne peut saisir que 5 caractères


Tu programme dans quel language ? quelle interface ?

C#, Visual basic, ASP.NET, Win Form ?

Bonne journée



Faites simple, aussi simple que possible, mais pas simpliste.
A. Einstein.
Commenter la réponse de cgandco
Messages postés
17
Date d'inscription
vendredi 8 décembre 2000
Statut
Membre
Dernière intervention
3 juillet 2012
0
Merci
Bonjour,
je travail avec juste Mysql et aucun langage de programmation
en faite ce que je souhaite
c'est que j'ai une table Budget elle contient l'attribut suivant:

Cod_Ag``char (5) NOT NULL


on sait que lorsque je saisie par exemple : Cod_Ag =897655555
un message d'erreur est envoyé via Mysql qui est :

DATA TOO LONG

je veux si je saisie aussi : Cod_Ag=001
j'aurai un message d'erreur par exemple:

DATA TOO SMALL

voici ci-dessous exemple de saisie correcte et pas correcte



Example:

11111 RIGHT =5

11 FALSE <5
00000 RIGHT =5
0 FALSE <5
777777 FALSE >5
98765 RIGHT =5
123 FALSE >5
10000 RIGHT =5
00001 RIGHT =5
001 FALSE <5

987654343 FALSE >5


Merci encore
Commenter la réponse de cherine86