begin process at 2012 02 14 03:19:21
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive Visual Basic & VB.NET

 > 

Archives Visual Basic

 > 

J'AI BESOIN D'AIDE !!!! :)

 > 

problème d'affichage de données access 2000


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

problème d'affichage de données access 2000

jeudi 27 janvier 2005 à 15:55:58 | problème d'affichage de données access 2000

ludo782

je suis étudiant et je dois réaliser une application pour le suivi de compétences d'élèves. Pour cela, j'ai une bdd avec une table 'Eleves' contenant le nom, le prénom et la classe. Une table  'Evaluer' liée à deux tables 'Niveau1' et 'Niveau2'  et à la table 'Etudiant'
Je souhaite afficher les données dans une DataGrid après ouverture d'un recordset avec une requête SQL. voila ma requête:
    Dim strSqlEleve As String
    strSqlEleve = " SELECT N.nom_eleve, N.prenom_eleve, N.classe_eleve" & _
                  " FROM Niveau1 N, Eleves E, Evaluer Ev " & _
                  " WHERE E.classe_eleve = '" & strClasse & "' " & _
                  " AND E.nom_eleve = '" & strNom & "' " & _
                  " AND E.prenom_eleve = '" & strPrenom & "' " & _
                  " AND E.nom_eleve = Ev.nom_eleve" & _
                  " AND E.prenom_eleve = Ev.prenom_eleve" & _
                  " AND Ev.nom_eleve = N.nom_eleve" & _
                  " AND Ev.prenom_eleve = N.prenom_eleve;"
Elle me semble correcte (strNom, strPrenom et strCLasse sont des variables contenant la sélection de l'élève à afficher) mais au lancement, j'ai ce message
"Erreur d'éxécution '-2147217904 (80040e10)':
Aucune valeur donnée pour un ou plusieurs des paramètres requis"
et la ligne d'ouverture du recordset est surlignée....
"    rs1.Open strSqlEleve, cn      "

Je ne comprends pas d'où vient l'erreur
Quelqu'un peut-il m'aider?? Merci
jeudi 27 janvier 2005 à 17:12:26 | Re : problème d'affichage de données access 2000

madbob

Est-ce que tu peux récuperer en mode débugage la chaine sql obtenue en mode Execution
et  la mettre en ligne ? e

A défaut de l'envoyer tu y verras toi même aussi plus clair...

Change ta requete uniquement le select en faisant un select count (N.nomeleve)... si tu ramène 0 alors faut voire

madbob
jeudi 27 janvier 2005 à 17:15:05 | Re : problème d'affichage de données access 2000

madbob

Observation après coup :
Le nom n'est pas un identifiant correct pour effectuer des jointures...

madbob
jeudi 27 janvier 2005 à 19:50:11 | Re : problème d'affichage de données access 2000

Manu94600

Je pense pouvoir t'aider, si tu m'etais ton MLD.

Effectivement tu ne doit pas faire ta jointure avec le nom, ni le prenom mais avec l'id_eleve. Tu as de grave problème dans ta requete, les jointures se font entre clé primaire et clé etrangere.

Je te demande de mettre ton MLD (j'espere que tu sais c koi), car dans ta table eleve il doit y avoir un id_eleve (identifiant).  
ex MLD: Eleve(Id_eleve, nom_eleve, prenom, #Id_classe)
               Classe(Id_classe, Libellé) 
      La clé primaire est souligné et # signifie que c une clé etrangere
      Ici la jointure = Eleve.Id_classe=Classe.Id_classe


Mais je pense pouvoir t'aider, je vien d'obtenir mon BTS IG.


Manu
vendredi 28 janvier 2005 à 08:54:54 | Re : problème d'affichage de données access 2000

ludo782

Effectivement je liais les tables avec le nom et le prénom de l'élève, j'ai modifié mes tables en ajoutant un id à chaque élève (je pensais pouvoir laisser le nom et le prénom en tant qu'id en les mettant en clé primaire). donc j'ai trois tables :
Eleves (num_eleve, nom_eleve, prenom_eleve, classe_eleve)
Niveau1 (num_niveau, 1_1, 1_2, ..... , num_eleve# )
Niveau2 (num_niveau, 1_1, 1_2 , ...., num_eleve# )
1_1, 1_2 ...sont des booléens (compétences) à valider au fur et à mesure de l'apprentissage, ils vont jusque 5_4 (il y en a 18 pour chaque niveau)

J'ai modifié mes tables, mon MCD et ma requête sous VB, la requête doit être mal tapée, j'ai un message d'erreur maintenant m'informant
" Erreur de syntaxe dans la date dans l'expression ' E.classe_eleve = '6 A' AND E.nom_eleve = 'n6' AND E.prenom_eleve = 'p6' AND E.num_eleve = N.num_eleve#'.

Je vous mets ma requête parce que je ne vois vraiment pas où il y a problème sachant que je récupère la classe, le nom et le prénom des élèves dans trois listBox
    strSqlEleve = " SELECT E.nom_eleve, E.prenom_eleve, E.classe_eleve" & _
                  " FROM Niveau1 N, Eleves E" & _
                  " WHERE E.classe_eleve = '" & strClasse & "' " & _
                  " AND E.nom_eleve = '" & strNom & "' " & _
                  " AND E.prenom_eleve = '" & strPrenom & "' " & _
                  " AND E.num_eleve = N.num_eleve# ;"

Sinon moi aussi je suis en BTS IG, alors dur les épreuves à passer??
Merci à tous

vendredi 28 janvier 2005 à 09:29:17 | Re : problème d'affichage de données access 2000

madbob

Bon tu fais comme tu veux mais...

salut,

Simplement si je te conseil de nous envoyer la requête telle que tu l'obtiens à l'execution c'est pas pour t'embêter :
  • C'est pour, d'une part, t'obliger à utliser le mode débugage
  • Lire la requete tel qu'elle est exécutée et ainsi te permettre de te corriger toi même si l'anomalie est évidente mais que tu n'arrive pas à la voire dans le code
Perso je trouve que le sql écrit de cette façon est plus simple à lire et à maintenir :
strSqlEleve
= " SELECT E.nom_eleve, E.prenom_eleve, E.classe_eleve"
strSqlEleve =strSqlEleve  &" FROM Niveau1 N, Eleves E"
strSqlEleve =strSqlEleve  &" WHERE E.classe_eleve = '" & strClasse & "' "
strSqlEleve =strSqlEleve  &" AND E.nom_eleve = '" & strNom & "' "
strSqlEleve =strSqlEleve  &" AND E.prenom_eleve = '" & strPrenom & "' "
strSqlEleve =strSqlEleve  &" AND E.num_eleve = N.num_eleve#"
strSqlEleve =strSqlEleve  &;"

Enfin à la lecture de ta requête le seul truc qui me gêne c'est : c'est N.num_eleve#
A+
madbob
vendredi 28 janvier 2005 à 11:03:35 | Re : problème d'affichage de données access 2000

Manu94600

Ya pas de probleme si tu travaille.

Pour ta requete premierement à la fin de ta requete tu as un #, c'est une erreur de syntaxe.

Et pour ce qui est de ta jointure je vois pas l'utilité de la table Niveau1. Puisque toutes les info à selectionner sont dans la table eleve.

@+

Manu
mardi 1 février 2005 à 11:10:25 | Re : problème d'affichage de données access 2000

ludo782

Bonjour,

J'ai retravaillé toute la base avec mon professeur, elle fonctionne, ce qui ne marchait pas auparavant venait du fait que les clefs primaires ne pouvaient être le nom ou le prénom...
Par contre, je n'ai jamais utilisé le mode 'Débogage' et je ne sais pas comment afficher la requête par ce mode, mais je serais intéressé de connaître son fonctionnement.
Sinon, une dernière question, c'est pour l'affichage des booléens dans la flexgrid (est-ce que c'est possible de les afficher sous forme de chekbox à l'intérieur de la FG?), sachant que lorsque j'affiche du texte, je le fais sous la forme       FgNiveau1.textmatrix(0,1) = strNom
Peut on remplacer le .Textmatrix ??

merci beaucoup

Ludo
mardi 1 février 2005 à 13:28:25 | Re : problème d'affichage de données access 2000

madbob

Content de t'avoir donné la bonne orientation...

Pour ta question concernant le flexgrid, j'en sais rien faut chercher... Et comme tu le verras chaques objets à ses propres caractéristiques, faut faire tes courses ;-).

Pour passer en mode debug, c'est vraiment simple : il te le demande désqu'il y a une erreur (pas boooon :-) ) mais efficace. Il suffit de dir Oui

Sinon tu positionnes ton curseur dans ton code sur une valorisation de variable ou un appel de fonction tu appuies sur la touche F9 et un point d'arrêt va être pris en compte : la ligne passe en surlignage (le standart est fond rouge sur blanc) avec un point dans la marge...

Ensuite tu lances ton code et dèsque l'exécution atteint le marqueur tu peux suivre pas à pas l'exécution du prog. Tu selectionne une variable clic droit ajouter un espion... pour accéder à la variable.

En mode débugage, il y a aussi une fenêtre d'exécution qui permet de forcer une valeur en particulier... d'agir donc sur le comportement du programme en cours d'exécution.

Bon débugage

madbob


Cette discussion est classée dans : données, and, prenom, ev, eleve


Répondre à ce message

Sujets en rapport avec ce message

drag and drop et base de données [ par OniJ ] Voilà, je cherche un moyen de consillier une base de donnée avec un drag and drop.J'ai créer un menu explorer qui affiche des fichiers, sous dossiers Je suis trop nul, j'arrive même pas à enregistrer dans une base de données Access ce que rentre dans un Textbox... [ par swordjet19 ] Bonjour à tous Voilà je suis nouveau en prog VB. Et je developpe un tout petit prog (rien à voir avec les votres lol), en fait c'est juste, entrer un BD et cellule d'une autre Form [ par holycristal ] Bonjour à tous,Je souhaitai savoir comment on faisait pour utiliser les données d'une cellule pour remplir tous le formulaire exemple :Dans ma Form1, comment faire pour ajouter des données d'un userform (nom prenom...) dans une base de données et qui s'inscriront à la suite sans s'effacer les unes par les autre saisies aprés?? [ par Alban113 ] Voila g un user form style: nom : ..... prenom : .... adresse  : ..... ok          annuler  comment faire pour ke les données saisies sajooute dan Transcription vba à vb.net [ par seb3009 ] Bonjour, je souhaite créer un programme en vb.net sur visual studion express 2008 mais je ne sais que programmer en vba...Donc j'aimerai que vous me d SQL server and c# [ par jihad22 ] Bonjour tout le monde, svp jai une application de stage à developper dont le sujet est: importation des données d'un ficher plat(fichier excel, txt, w récupérer données d'excel [ par wajdibh ] bonjour, j'ai un projet qui consiste à réaliser une interface graphique à l'aide de VB.net et qui accède à un tableau excel chaque trois minutes et tr VB.NET Données XML -> Excel [ par poulain35 ] Bonjour, J'aimerai transférer des données d'un fichier XML dans un classeur Excel tous ceci en VB.NET ,est ce que quelqu'un aurai une idée? Merci d' aide pour requete sql avec vb6 pour access [ par akzo ] Bonsoir a tous j'ai besoin d'une aide pour un code plus simple que ce que j'utilise deja et qui fonctionne je presente ma table de cette facon numaut Datagrid: Un petit problème [ par omartt ] Bonjour à tous, Dans ma base de données access, j'ai saisi des données qui sont liée à une combobox et qui devront se charger avec form1.load mais ils


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,265 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales