aichaoussousagadir
Messages postés26Date d'inscriptionmercredi 23 février 2011StatutMembreDernière intervention18 mars 2013
-
20 août 2011 à 18:59
aichaoussousagadir
Messages postés26Date d'inscriptionmercredi 23 février 2011StatutMembreDernière intervention18 mars 2013
-
20 août 2011 à 22:06
bonjour à tous,
j'ai entrain de developper une application en utilisant vb.net 2008 et access 2007 comme SGBD.
Mon probleme:
j'ai une table "maladies" ayant deux colonnes(id_maladie,libelle_maladie) qunad j'ajoute une maladie par exemple "sucre" je veux pas qu'il s'ajoute une autre fois dans la table maladies avec une autre id_maladie diferent sachant que id_maladie est une cle primaire autoincremente
j'ai essaie cela:
j'ai extrait tous les maladies existant dans la colonne libelle_maladie un par un et j'ai l'a compare avec le contenu du textbox(c a d nouvelle maladie que je veux entrer)et voila le code:
////////////////////////////////////////
dim dr as oledbdatareader
dim combo as integre
dim req="select * from maladies"
cmd=new oledbcommande(req,cnx)
dr=cmd.executereader
while dr.read
combo=dr.getstring(1)
if combo=libelle_maladie.text then
msgbox("cett maladie exite deja dans la table")
endif
End while
mais cela ne fonctionne pas
vous pouvez m'aider s il vous plait?
merci d'avance.
A voir également:
Eviter l ajout des enregistrements existant deja dans la base
NHenry
Messages postés15083Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention19 septembre 2023159 20 août 2011 à 21:29
Bonjour,
Tu fais une requête SELECT comme celle que je t'ai montré, ça te retourne le nombre d'enregistrements répondant au critère du WHERE.
Ensuite, si il y a un résultat non nul, ça indique que ça existe déjà.
Sinon, tu mets ta colonne en "sans doublon".
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS et aussi ce lien[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list ---
Mon site
NHenry
Messages postés15083Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention19 septembre 2023159 20 août 2011 à 19:19
Bonjour,
Et en faisant une requête du genre :
"SELECT (count(*) FROM maladies WHERE MonChamp="+libelle_maladie.text
Ensuite en récupérant le résultat retourné ?
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS et aussi ce lien[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list ---
Mon site
aichaoussousagadir
Messages postés26Date d'inscriptionmercredi 23 février 2011StatutMembreDernière intervention18 mars 2013 20 août 2011 à 19:46
salut NHenry
j ai essaie avec cette requete que vous m'a proposer mais une erreur s'affiche au niveau de la ligne dr=cmd.executereader "aucun valeur donnée pour un ou plusieurs des parametres requis".
et j'ai pas compris ce que vous voulez dir de
"Ensuite en récupérant le résultat retourné "
vous pouvez m'expliquer s'il vous pait
merci
NHenry
Messages postés15083Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention19 septembre 2023159 20 août 2011 à 20:06
Bonjour,
Il y a pas de ( devant count
MonChamp est à remplacer par le nom du champ.
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS et aussi ce lien[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list ---
Mon site
NHenry
Messages postés15083Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention19 septembre 2023159 20 août 2011 à 20:52
Bonjour,
As-tu regardé la valeur retournée et essayer de comprendre ce qu'elle signifiait ?
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS et aussi ce lien[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list ---
Mon site
aichaoussousagadir
Messages postés26Date d'inscriptionmercredi 23 février 2011StatutMembreDernière intervention18 mars 2013 20 août 2011 à 21:05
salut
le probleme c est que j arrive pas à regarder cette valeur là .une fois je saisie une maladie et je click sur le button ajouter le messege d'erreur s'affiche au niveau de la ligne dr=cmd.executereader
vola le message "aucun valeur donnée pour un ou plusieurs des parametres requis".
je sais pa pourquoi
NHenry
Messages postés15083Date d'inscriptionvendredi 14 mars 2003StatutModérateurDernière intervention19 septembre 2023159 20 août 2011 à 21:07
Bonjour,
As-tu essayé de l'exécuter directement dans Access pour comprendre d'où vient l'erreur ?
---------------------------------------------------------------------
[list=ordered][*]Pour poser correctement une question et optimiser vos chances d'obtenir des réponses, pensez à lire le règlement CS et aussi ce lien[*]Quand vous postez un code, merci d'utiliser la coloration syntaxique (3ième icône en partant de la droite : )
[*]Si votre problème est résolu (et uniquement si c'est le cas), pensez à mettre "Réponse acceptée" sur le ou les messages qui vous ont aidés./list ---
Mon site
aichaoussousagadir
Messages postés26Date d'inscriptionmercredi 23 février 2011StatutMembreDernière intervention18 mars 2013 20 août 2011 à 22:06
salut
merci beaucoup Henry j'ai compris ton aidé et au lieu de tester si combo=libelle_maladie.text alors j ai tester si combo=0 ajouter sinon eviter l ajout et ca maintenant fonctionne fonctionne tres bien
merci beaucooooooooooooup