IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

VB.NET Discussion :

recuperer le resultat d'une requete


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Août 2007
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 61
    Par défaut recuperer le resultat d'une requete
    bonjour;
    je suis débutant en vb.net,
    je souhaite recevoir le résultat d'une requete et le mettre dans un textbox,
    voici le code que j'utilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
            Dim daMyName As New Data.SqlClient.SqlDataAdapter
            Dim myConnString As String
            myConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = c:\etat_civil.mdb"
     
            Dim dsMyName As New Data.DataSet
            Dim mySelectQuery As String = "select * from table1 where nom = dupon"
            Dim myConnection As New Data.OleDb.OleDbConnection(myConnString)
            Dim myCommand As New Data.SqlClient.SqlCommand(mySelectQuery)
            myConnection.Open()
            daMyName.SelectCommand = myCommand
            daMyName.Fill(dsMyName)
            TextBox1.Text = dsMyName.Tables(0).Rows(0).Item("nom").ToString
            myConnection.Close()
    le problème c'est que j'obtiens le message d'erreur :
    "Fill : la propriété SelectCommand.Connection n'a pas été initialisée."
    pouvez vous m'aider a résoudre ça?

    merci.

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Ajoute ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    myCommand.Connection = myConnection
    Par contre, utiliser un dataset et un dataadapter pour récupérer un champ, c'est un peu comme utiliser un bazooka pour tuer une mouche
    D'ailleurs, évite de faire des "SELECT *", sauf quand tu ne sais pas à l'avance les champs que tu vas récupérer.

    Tu pourrais simplifier ton code en ceci :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
            Dim myConnString As String
            myConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = c:\etat_civil.mdb"
             Dim mySelectQuery As String = "select nom from table1 where nom = dupon"
            Dim myConnection As New Data.OleDb.OleDbConnection(myConnString)
            Dim myCommand As New Data.SqlClient.SqlCommand(mySelectQuery)
            myConnection.Open()
            myCommand.Connection = myConnection
            TextBox1.Text = myCommand.ExecuteScalar().ToString()
            myConnection.Close()
    Pour gérer proprement la connection et s'assurer qu'elle sera bien fermée même en cas d'erreur, utilise l'instruction Using :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
            Dim myConnString As String
            myConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source = c:\etat_civil.mdb"
             Dim mySelectQuery As String = "select nom from table1 where nom = dupon"
     
            Using myConnection As New Data.OleDb.OleDbConnection(myConnString)
                myConnection.Open()
                Using myCommand As New Data.SqlClient.SqlCommand(mySelectQuery)
                    myCommand.Connection = myConnection
                    TextBox1.Text = myCommand.ExecuteScalar().ToString()
                End Using
            End Using

  3. #3
    Membre confirmé
    Inscrit en
    Août 2007
    Messages
    61
    Détails du profil
    Informations forums :
    Inscription : Août 2007
    Messages : 61
    Par défaut
    merci pour votre réponse;
    mais il y a un message d'erreur lors de la compilation;
    et c'est au niveau de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    myCommand.Connection = myConnection
    le message est :
    Error 1 Value of type 'System.Data.OleDb.OleDbConnection' cannot be converted to 'System.Data.SqlClient.SqlConnection'.
    "remarque : j'utilise une base de données access avec environnement visual studio 2005"

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Ah oui, j'avais même pas fait gaffe... dans ton code il y a des classes pour SQL Server (Data.SqlClient.Sql***) et des classes pour OleDb (Data.OleDb.OleDb***). Tu mélanges tout

    Remplace tous les "Data.SqlClient.Sql" par "Data.OleDb.OleDb", et ça devrait marcher...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. comment recuperer un resultat d'une requete
    Par lupus83 dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 17/07/2007, 11h00
  2. Réponses: 2
    Dernier message: 20/11/2006, 19h21
  3. [WinDev 10] Récupérer le résultat d'une requête
    Par Davboc dans le forum WinDev
    Réponses: 6
    Dernier message: 05/10/2006, 07h22
  4. Comment recuperer le resultat d'une requete analyse croisee?
    Par SylvainJ dans le forum Requêtes et SQL.
    Réponses: 2
    Dernier message: 18/07/2006, 18h07
  5. Comment récupérer le résultat d'une requête dans un tableau ?
    Par Kylen dans le forum Accès aux données
    Réponses: 1
    Dernier message: 14/06/2006, 19h32

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo