Problème de conenxion avec executereader

Signaler
Messages postés
40
Date d'inscription
vendredi 14 novembre 2008
Statut
Membre
Dernière intervention
8 octobre 2011
-
Messages postés
40
Date d'inscription
vendredi 14 novembre 2008
Statut
Membre
Dernière intervention
8 octobre 2011
-
je veux afiicher dans un datagridview les données d'une table a partir d'un critère que je le donne dans un texte box mais il m'afiicher une erreur que la connexion est fermé et execute reader nécesiite une connexion ouvertee mais j'ai ouvrir ma connexion dans le module j'utilise vb.net 2008 et sql server studio manager express voila mn code :

com.CommandText = "SELECT idProjet 'Code Projet', idClient 'Code Client', idResponsable 'Code Responsable', Nom 'Nom', Suivi 'Suivi', Date 'Date' from Projet where idProjet like '" + TextBox1.Text + " %'"
com.Connection = con
rd = com.ExecuteReader
Dim d As New DataTable
d.Load(rd)
DataGridView1.DataSource = d

4 réponses

Messages postés
1241
Date d'inscription
mardi 10 octobre 2006
Statut
Membre
Dernière intervention
27 août 2013
6
Bonjour à toi aussi,

Si tu as ce message, c'est donc que tu n'as pas utilisé "open", montres donc tout le code si tu veux avoir une aide efficace.

Et essayes de faire un peu d'effort au niveau de l'écriture, pour mieux te faire comprendre et éviter les "je veux"

L'expérience, c'est une connerie par jour, mais jamais la même..
Messages postés
40
Date d'inscription
vendredi 14 novembre 2008
Statut
Membre
Dernière intervention
8 octobre 2011

Bonjour , merci pour la remarque

voilaa ou jé ouvert ma conexion:

Dim con As New SqlClient.SqlConnection("Server=KOUKICH-PC\SQLEXPRESS;DataBase=GestionProjet")

ou je vais faire OPEN

MERCI !!
Messages postés
2814
Date d'inscription
mardi 15 avril 2003
Statut
Membre
Dernière intervention
2 juin 2020
37
Salut,

Voici un exemple :

Try
            '
            Dim sql_query As String = "SELECT idProjet, [Code Projet], idClient, [Code Client], " & _
                                      "idResponsable, [Code Responsable], Nom ,Suivi , [Date] " & _
                                      "FROM Projet WHERE idProjet like '" & TextBox1.Text & " %'"
            '
            Dim con As New SqlClient.SqlConnection("Server=KOUKICH-PC\SQLEXPRESS;DataBase=GestionProjet")
            Dim com As New SqlClient.SqlCommand(sql_query, con)
            '
            con.Open()
            '
            Dim rd As SqlClient.SqlDataReader = com.ExecuteReader
            Dim d As New DataTable
            d.Load(rd)
            '
            DataGridView1.DataSource = d
            '
        Catch Ex As Exception
            MessageBox.Show("Erreur de données: " & Ex.Message)
        End Try


Cenpendent fais attention, j'ai corrigé ta requête SELECT, je te conseille de revoir les bases du SQL. Evite les noms non conventionnels (avec espaces ou caratères spéciaux) ou les nom systèmes tel que 'Date' ou 'Desc'. Sinon tu es bon pour encadrer tes champs par des crochets dans toutes tes requêtes.

Une dernière chose, ta chaîne de connexion est incomplète, il manque les paramètres d'authentification :

Server=KOUKICH-PC\SQLEXPRESS;DataBase=GestionProjet;Integrated Security=SSPI

Pour une connexion via ta session Windows (donc locale) et pour les connexion distantes :

Server=Ton Adress IP;DataBase=GestionProjet;User id=Ton Login;Password=Ton passe;

Les connexion distantes doivent être activés sous SQL Server et un compte devra être créé pour l'authentification.

Si le déboguage est l'art d'enlever les bogues, la programmation doit être l'art de les créer.
Messages postés
40
Date d'inscription
vendredi 14 novembre 2008
Statut
Membre
Dernière intervention
8 octobre 2011

Ok merci beaucoup pour votre aide