Requête Select erronée

dullbrain Messages postés 29 Date d'inscription mardi 15 décembre 2009 Statut Membre Dernière intervention 12 novembre 2010 - 28 juin 2010 à 17:36
dullbrain Messages postés 29 Date d'inscription mardi 15 décembre 2009 Statut Membre Dernière intervention 12 novembre 2010 - 29 juin 2010 à 14:11
Bonjour à tous,

j'ai un petit souci, à un moment, je lance une requête pour sélectionner deux des champs d'une de mes tables à l'aide d'un select, pour ensuite lier la table obtenue à un Datagridview.
Seulement voilà, ceci a parfaitement réussi pour d'autres cas, mais là, pas moyen, il me sort toutes les colonnes, dont seules celles que je voulais sont remplies avec les valeurs présentes dans la table.
J'ai essayé de copier une requête de là où ça marchait bien en changeant juste le nom des tables, pas moyen !
Et le datagridview est un copié collé des autres donc mêmes propriétés !

Si vous avez une idée d'où peut venir un select qui ne sélectionne pas, je suis tout ouïe !

Merci d'avance et bonne soirée !

5 réponses

Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
28 juin 2010 à 17:41
Salut,

Comment veux-tu que l'on se fasse une idée sans avoir le code que tu as saisi ?

Poste le code te permettant la connexion à la base jusqu'à la requête select, on pourra voir ce que cela donne et éventuelement trouver d'ou l'erreur survient.

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
dullbrain Messages postés 29 Date d'inscription mardi 15 décembre 2009 Statut Membre Dernière intervention 12 novembre 2010
29 juin 2010 à 08:19
Le bout suivant permet la connexion et devrait me renvoyer juste une colonne

If Not table_load("SELECT N° FROM Data_OT", "Data_OT") Then
MsgBox("Rien trouvé", MsgBoxStyle.Information, "Erreur")
Exit Sub
End If

Et voici la fonction table_load :

Private Function table_load(ByVal sql_query As String, ByVal Table As String)

Try

dtt.Clear()
dts.Clear()


cmd = New OleDbCommand(sql_query)

dta = New OleDbDataAdapter(cmd)

cmd.Connection = connect

dta.Fill(dts, Table)

dtt = dts.Tables(Table)


If dtt.Rows.Count < 1 Then
'on retourne False pour signaler l'échec
Return False
End If

Return True

Catch ex As Exception
MsgBox(ex.Message, MsgBoxStyle.OkOnly + MsgBoxStyle.Information, "Fermeture de la fenêtre")
End Try

Return False
End Function
0
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
29 juin 2010 à 12:13
Le champ de ta table n'as pas un non conventionnel, tu drevra l'entourer de [] à chaque fois que tu la citera dans une requête.

=> "SELECT [N°] FROM Data_OT"


Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0
Mayzz Messages postés 2813 Date d'inscription mardi 15 avril 2003 Statut Membre Dernière intervention 2 juin 2020 28
29 juin 2010 à 12:14
Le champ de ta table n'as pas un nom conventionnel, désolé ! J'ai pas les yeux en face des trous =)


Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
0

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

Posez votre question
dullbrain Messages postés 29 Date d'inscription mardi 15 décembre 2009 Statut Membre Dernière intervention 12 novembre 2010
29 juin 2010 à 14:11
Merci de ta réponse !

En fait il s'avérait que dans le cas particulier, il conservait le select précédent bien que dans la fonction table_load il y ait un dtt.clear.

En remplaçant les .Clear() par des .Reset(), ça s'est solutionné ! Bizarre mais bon...

Merci bien en tout cas !
0
Rejoignez-nous