Requete de selection a deux criteres

saadouli7 Messages postés 36 Date d'inscription mardi 26 avril 2011 Statut Membre Dernière intervention 18 novembre 2011 - 2 mai 2011 à 17:07
cs_jopop Messages postés 1540 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 1 août 2013 - 3 mai 2011 à 11:41
j'ai une probleme lors de l'execution de ma requete de selection .
mon code est le suivant cnxstr="Provider=Microsoft.Jet.OLEDB.4.0;DataSource=C:\Users\compaq\Desktop\Emploi.mdb;"
cnx = New OleDb.OleDbConnection
cnx.ConnectionString = cnxstr
cnx.Open()

sql "select NbrGpe from NbrGpeParClasse where filière_ '" & ComboBox1.SelectedItem & "'and CycleAnnée='" & ComboBox2.SelectedItem & "'"
cmd = New OleDb.OleDbCommand
cmd.CommandText = sql
cmd.Connection() = cnx
Dim myReader1 As OleDb.OleDbDataReader = cmd.ExecuteReader()

While myReader1.Read()
' MsgBox("le nombre des groupes est" & myReader1.GetInt32(0))
TextBox1.Text = myReader1.GetInt16(0)
lors de l'execution il m'a apparu le msg suivant:Aucune valeur donnée pour un ou plusieurs des paramètres requis.
quel le problme est quel est le code pour une requette a deux criteres

11 réponses

Utilisateur anonyme
2 mai 2011 à 22:16
A mon avis, tu as ComboBox1.SelectedItem ou ComboBox2.SelectedItem de null.
Vérifie en debuggant si tu as bien des valeurs pour eux.


--
Pylouq (actuellement jongleur de clavier AZERTY et de clavier QWERTZ)
0
saadouli7 Messages postés 36 Date d'inscription mardi 26 avril 2011 Statut Membre Dernière intervention 18 novembre 2011
3 mai 2011 à 09:33
les deux combobox sont remplis automatiquement au chargement du formulaire(form load) et j'ai verifie ça mais je crois que le probleme c'est au niveau de l'ecriture de ma requete il y'a une chose qui manque ou de plus.
0
cs_jopop Messages postés 1540 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 1 août 2013 12
3 mai 2011 à 09:41
Salut,

c'est normal les accents dans les noms de champs ?
et le underscore qui traîne derrière filière_ ?
Tes ComboBoxes sont bien remplies avec des string, et non des objets complexes ?
Ces valeurs ne comportes pas de caractères foireux ? (ex. : ')
Quand tu passes en mode debug, que tu récupères la requête générée, et que tu la lances dans le client de ton SGBD, ça fonctionne ?
0
saadouli7 Messages postés 36 Date d'inscription mardi 26 avril 2011 Statut Membre Dernière intervention 18 novembre 2011
3 mai 2011 à 10:05
les comboboxes sont remplis par des valeurs entier . je suis certainne que le probleme est au niveau des accents et les underscores mais j'ai pas arrivé à le corriger . le msg d'arreur m'a avertit que c'est un erreur de syntaxe
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_jopop Messages postés 1540 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 1 août 2013 12
3 mai 2011 à 10:12
Je sais que pour MySQL, quand on a des champs qui reprennent les mots clés, on utilise la quote spéciale (`mon_champ`) (touche 7 du clavier). Je ne sais pas si ça fonctionne pour les accents mais ça peut se tenter (NB : pour Access il faut utiliser les crochets [])

Sinon, s'il s'agit de valeurs numériques tu ne devrais pas ajouter de quote simple ('ma_val') autour de tes valeurs, mais il faut que ce soit bien des integer côté BDD.

Et lorsque tu extrais la requête générée pour la passer dans le client de ton SGBD tu as aussi "erreur de syntaxe" ?
0
saadouli7 Messages postés 36 Date d'inscription mardi 26 avril 2011 Statut Membre Dernière intervention 18 novembre 2011
3 mai 2011 à 10:30
je m'excuse j'ai commue une faute pour le combobox1 il recoit des données de type chaine de caracteres alors que combobox2 c'est de type entier. je travaille effectivement avec accees .et c'est ma premiere application j'ai pas trop de connaissance dans ce domaine j'ai besoin de vos aides
merci d'avance
0
cs_jopop Messages postés 1540 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 1 août 2013 12
3 mai 2011 à 10:39
On va essayer un truc :
Mets une TextBox en plus dans ton interface et assigne lui la valeur de ta variable nommée sql. Tu pourras ainsi voir la requête que tu as générée. Ensuite fais nous la suivre, on arrivera peut-être à voir où est l'erreur. De ton côté tu vas ouvrir ta BDD avec Access, ouvrir un écran de requête SQL et coller ta requête. Tu la lances et tu vois quelle erreur ressort.
0
saadouli7 Messages postés 36 Date d'inscription mardi 26 avril 2011 Statut Membre Dernière intervention 18 novembre 2011
3 mai 2011 à 11:05
j'execute la requete en access le resultat c'est celle demandée mais elle est doublée j'ai corrigé ça dans mon code vb par ajouter GROUPED by (NbrGpe). mais j'ai aucun resultat . un msg d'erreur s'affiche au niveau Dim myReader1 As OleDb.OleDbDataReader = cmd.ExecuteReader()--->"Aucune valeur donnée pour un ou plusieurs des paramètres requis.
0
cs_jopop Messages postés 1540 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 1 août 2013 12
3 mai 2011 à 11:12
Tu veux pas me faire voir la requête générée, hein ? ^^
Il faudrait également voir la description de ta table.
0
saadouli7 Messages postés 36 Date d'inscription mardi 26 avril 2011 Statut Membre Dernière intervention 18 novembre 2011
3 mai 2011 à 11:31
le probleme c'est pas que je veut pas te faire voir la requete mais c'est que j'ai pas réellement compris ce que tu m'as demandé de faire exactement.
0
cs_jopop Messages postés 1540 Date d'inscription lundi 26 mai 2003 Statut Membre Dernière intervention 1 août 2013 12
3 mai 2011 à 11:41
Ben de me montrer la requête générée, quoi ><
Pour ça il faut :
- soit passer en mode debug et scruter ta variable nommée sql,
- soit afficher le contenu de cette variable dans une TextBox.
0
Rejoignez-nous