Récupérer le résultat d'un select dans un datagridview
JeanMarc
-
Utilisateur anonyme -
Utilisateur anonyme -
Bonjour.
Je travail sur un une projet de gestion de location de voiture.
J'ai créer un formulaire pour rechercher des information sur des clients existant déjà dans ma base de données (Access).
J'ai écris une requête sql sur l'évènement TextChanged d'un textBox qui me renvoi, dans un DataGridView les informations sur les clients dont les nom commence par la lettre que j'ai spécifié dans le textBox, mais la requête ne s'exécute pas.
Voici mon code :
Private Sub txtRecherche_TextChanged(sender As Object, e As EventArgs) Handles txtRecherche.TextChanged
dtgResult.Rows.Clear()
infocon.mareq = "Select MatCli, NomCli, PrenomCli from CLIENT where NomCli LIKE '" & Trim(txtRecherche.Text) & "*'"
Try
infocon.proc_connexion()
If infocon.rdr.Read Then
dtgResult.Rows.Add(infocon.rdr(0), infocon.rdr(1), infocon.rdr(2))
While infocon.rdr.Read
dtgResult.Rows.Add(infocon.rdr(0), infocon.rdr(1), infocon.rdr(2))
End While
End If
Catch ex As Exception
End Try
End Sub
Je travail sur un une projet de gestion de location de voiture.
J'ai créer un formulaire pour rechercher des information sur des clients existant déjà dans ma base de données (Access).
J'ai écris une requête sql sur l'évènement TextChanged d'un textBox qui me renvoi, dans un DataGridView les informations sur les clients dont les nom commence par la lettre que j'ai spécifié dans le textBox, mais la requête ne s'exécute pas.
Voici mon code :
Private Sub txtRecherche_TextChanged(sender As Object, e As EventArgs) Handles txtRecherche.TextChanged
dtgResult.Rows.Clear()
infocon.mareq = "Select MatCli, NomCli, PrenomCli from CLIENT where NomCli LIKE '" & Trim(txtRecherche.Text) & "*'"
Try
infocon.proc_connexion()
If infocon.rdr.Read Then
dtgResult.Rows.Add(infocon.rdr(0), infocon.rdr(1), infocon.rdr(2))
While infocon.rdr.Read
dtgResult.Rows.Add(infocon.rdr(0), infocon.rdr(1), infocon.rdr(2))
End While
End If
Catch ex As Exception
End Try
End Sub
A voir également:
- Récupérer le résultat d'un select dans un datagridview
- Comment recuperer un message supprimé sur whatsapp - Guide
- Comment récupérer un document dans le presse-papier samsung - Guide
- Comment récupérer un compte facebook piraté - Guide
- Resultat foot - Télécharger - Vie quotidienne
- Comment récupérer un compte facebook désactivé - Guide
5 réponses
Bonjour
Pour poster un code lisible merci d’utiliser les balises de code, voir ce petit tuto https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
D’autre part ton titre parle d’un datagrid (contrôle WPF) et le corps du message de datagridview (contrôle Winform) ce ne sont pas les mêmes technologies ni les mêmes contrôles.
Peux tu confirmer lequel tu utilises ?
Pour poster un code lisible merci d’utiliser les balises de code, voir ce petit tuto https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
D’autre part ton titre parle d’un datagrid (contrôle WPF) et le corps du message de datagridview (contrôle Winform) ce ne sont pas les mêmes technologies ni les mêmes contrôles.
Peux tu confirmer lequel tu utilises ?
Oui le code behind est en vb.net, mais la technologie de l’interface c’est winform.
En .net tu peux avoir plusieurs autres techno d’interface
Quel est le type de l’objet infocon?
Le datagridview est il vide à ce moment-là ? Si non, alors il faudrait commencer par le vider
En .net tu peux avoir plusieurs autres techno d’interface
- wpf
- asp
- uiApp
- etc….
Quel est le type de l’objet infocon?
Le datagridview est il vide à ce moment-là ? Si non, alors il faudrait commencer par le vider
L'objet infocon est de type InfoConnection, qui est une classe que j'ai créé. Cette classe me permet de gérer la connexion avec la base de donnée et l'exécution des requêtes.
Voici son code :
Voici son code :
Public Class InfoConnexion Public cnn As SqlConnection Private macon As New OleDbConnection 'Déclare une variable macon de type oledb connexion et instanciée(New) Public rdr As OleDbDataReader Private strcon As String Private cmd As OleDbCommand Public mareq As String Friend meq As String 'procédure permetant de faire la connexion et d'exécuter les commandes sql Public Sub proc_connexion() strcon = connect 'permet la connexion à la base de donnée macon = New OleDbConnection(strcon) macon.Open() cmd = New OleDbCommand(mareq, macon) rdr = cmd.ExecuteReader() End Sub Public Sub pro_deconnexion() rdr.Close() macon.Close() End Sub Public Function la_table() As DataTable strcon = connect 'permet la connexion à la bd macon = New OleDbConnection(strcon) macon.Open() cmd = New OleDbCommand(mareq, macon) ' Dim dt As New DataSet Dim ds As DataTable = New DataTable Dim dat As New OleDbDataAdapter(cmd) dat.Fill(ds) 'ds = dt.Tables(0) macon.Close() Return (ds) End Function End Class
Ok
Tu n’as pas répondu à la 2eme question, à savoir est ce que le datagridview est vide?
D’autre part, si la connexion est déjà établie, je pense que ça peut poser problème.
As tu exécuté en pas à pas pour voir ce qui se passe?
Tu n’as pas répondu à la 2eme question, à savoir est ce que le datagridview est vide?
D’autre part, si la connexion est déjà établie, je pense que ça peut poser problème.
As tu exécuté en pas à pas pour voir ce qui se passe?
Oui, le DataGridView est vide. Je l'ai vider avec première ligne de code.
J'ai exécuter en pas à pas détaillé. Et il n'y a aucune erreur au cours de l'exécution. Seulement, arrivé au niveau de la condition if :
Le code à l'intérieur de la structure ne s'exécute pas.
C'est-à-dire que la condition n'est pas vérifiée.
Je me suis dis que c'est peut-être un problème de ma requête, alors j'ai changé de requête et ça a marché correctement. C'est à ce niveau que je suis bloqué.
dtgResult.Rows.clear()
J'ai exécuter en pas à pas détaillé. Et il n'y a aucune erreur au cours de l'exécution. Seulement, arrivé au niveau de la condition if :
If infocon.rdr.Read Then dtgResult.Rows.Add(infocon.rdr(0), infocon.rdr(1), infocon.rdr(2)) While infocon.rdr.Read dtgResult.Rows.Add(infocon.rdr(0), infocon.rdr(1), infocon.rdr(2)) End While End If
Le code à l'intérieur de la structure ne s'exécute pas.
C'est-à-dire que la condition n'est pas vérifiée.
Je me suis dis que c'est peut-être un problème de ma requête, alors j'ai changé de requête et ça a marché correctement. C'est à ce niveau que je suis bloqué.
Je n'utilise jamais de datareader, donc à tout hasard, Read est une méthode mais tu n'as pas mis les pararenthèses.
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour à tous! Par rapport à l'affichage d'un Select dans un datagridview, vous pouvez aussi visualiser ce lien:https://www.youtube.com/watch?v=H4DmXqMOY8I&feature=youtu.be
Bonjour Jacob.
Non je n’irai pas voir ta vidéo, ici https://forums.commentcamarche.net/forum/affich-36859630-cours-sur-le-c#10 pourquoi
Non je n’irai pas voir ta vidéo, ici https://forums.commentcamarche.net/forum/affich-36859630-cours-sur-le-c#10 pourquoi
Merci pour votre réponse.
En fait c'est un DataGridView que j'utilise dans mon code et le code est en vb.net.
Revoici le code :
Merci d'avance pour vos réponses.