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 :

récuperer les champs resultats de ma requete (une seule ligne retournée)


Sujet :

VB.NET

  1. #1
    Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 64
    Points : 40
    Points
    40
    Par défaut récuperer les champs resultats de ma requete (une seule ligne retournée)
    salut a tous, je veux savoir comment faire pour récuperer les résultats retournés par ma requete sachant que celle ci me retourne toujours un seul enregistrement c`est pourquoi j`avais pas penser à faire recours au data reader.
    Voici ma requete:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     Dim sqlQRY1 As String = "SELECT AUDIO.Nom_Aud,IMAGE.Nom_Img FROM [IMAGE],[AUDIO],[TEST] WHERE Id_Test='" & idTest & "' and [IMAGE].Nom_Img=TEST.Nom_Img and AUDIO.Nom_Aud=TEST.Nom_Aud"
    'ouvrir la connexion
                    myConnexion.Open()
     
                    'exécuter la requete
                    Dim cmd1 As OleDbCommand = New OleDbCommand(sqlQRY1, myConnexion)
    j`ai besoin de AUDIO.Nom_Aud et IMAGE.Nom_Img, comment faire pour les obtenir et les mettre dans 2 variables ???
    merci d`avance pour l`aide

  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 : 42
    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
    Points : 39 753
    Points
    39 753

  3. #3
    Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 64
    Points : 40
    Points
    40
    Par défaut
    salut, merci pour votre lien, alors j`avais essayé ca :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
     Try
     
                'déclarer la variable qui va contenir l`id du test en cours
                Dim idTest As Integer
     
     
                    'récuperer l`identifiant du test
                    idTest = tab(tailleTableau)
                    'Préparer la requete.
                    Dim sqlQRY1 As String = "SELECT AUDIO.Nom_Aud,IMAGE.Nom_Img FROM [IMAGE],[AUDIO],[TEST] WHERE Id_Test='" & idTest & "' and [IMAGE].Nom_Img=TEST.Nom_Img and AUDIO.Nom_Aud=TEST.Nom_Aud"
     
                    'ouvrir la connexion
                    myConnexion.Open()
     
                    'exécuter la requete
                    Dim cmd1 As OleDbCommand = New OleDbCommand(sqlQRY1, myConnexion)
     
                    'exécuter le data reader
                    Dim data_img_aud As OleDbDataReader = cmd1.ExecuteReader()
     
                    'Parcourir le data reader
     
                    Do While data_img_aud.Read()
     
                        MsgBox(data_img_aud.GetValue(0))
                    Loop
                    'fermer le data reader
                    data_img_aud.Close()
                    'fermer la connexion
                    myConnexion.Close()
                End If
            Catch ex As Exception
                MsgBox(ex.Message)
            Finally
                myConnexion.Close()
            End Try
    Cependant j`obtenais l`erreur suivante:
    Data type mismatch in creteria expression
    ma question est : si ma requete est juste comment puis je récuperer AUDIO.Nom_Aud et IMAGE.Nom_Img ??

  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 : 42
    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
    Points : 39 753
    Points
    39 753
    Par défaut
    A priori l'erreur est dans la requête, tu as essayé de l'exécuter directement sur la base de données ? Si la colonne Id_Test est un nombre, il ne faut pas mettre de guillemets simples (apostrophes)

    ma question est : si ma requete est juste comment puis je récuperer AUDIO.Nom_Aud et IMAGE.Nom_Img ??
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim Nom_Aud As String = data_img_aud.GetString(0)
    Dim Nom_Img As String = data_img_aud.GetString(1)
    Autre option, pour éviter d'utiliser des index :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim Nom_Aud As String = CType(data_img_aud("Nom_Aud"), String)
    Dim Nom_Img As String = CType(data_img_aud("Nom_Img"), String)
    Ou encore :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    Dim Nom_Aud As String = data_img_aud.GetString(data_img_aud.GetOrdinal("Nom_Aud"))
    Dim Nom_Img As String = data_img_aud.GetString(data_img_aud.GetOrdinal("Nom_Img"))

  5. #5
    Membre du Club
    Inscrit en
    Juillet 2008
    Messages
    64
    Détails du profil
    Informations forums :
    Inscription : Juillet 2008
    Messages : 64
    Points : 40
    Points
    40
    Par défaut
    merci infiniment

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

Discussions similaires

  1. Réponses: 12
    Dernier message: 04/01/2015, 19h47
  2. Réponses: 6
    Dernier message: 08/10/2008, 18h56
  3. Réponses: 6
    Dernier message: 31/07/2006, 16h01
  4. Sélectionnez les champs qui n'apparaissent qu'une fois
    Par jeyce dans le forum Langage SQL
    Réponses: 3
    Dernier message: 21/07/2005, 19h19
  5. Réponses: 1
    Dernier message: 12/10/2004, 10h22

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