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 :

sql - Textbox dans condition WHERE


Sujet :

VB.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2012
    Messages : 5
    Par défaut sql - Textbox dans condition WHERE
    Hello,

    Voici la situation sous Visual Basic 2010 Express:

    Base de données = BD_Dérangements.mdb
    Table = TB_Utilisateur
    Champs = Utilisateur_Username ; Utilisateur PC

    Formulaire = Form_Main.vb
    TextBox = Utilisateur_UsernameTextBox

    La requête sql =
    SELCT Utilisateur_PC FROM TB_Utilisateur WHERE Utilisateur_Username = Utilisateur_UsernameTextBox.text

    Malheureusement, la requête ne fonctionne pas. J'ai essayé avec des ', des " etc mais rien ne fonctionne.

    Par contre, si je met WHERE Utilisateur_Username = 'utilisateur3', la requête renvoie le champ correspondant.

    D'avance merci pour votre aide :-)

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Septembre 2012
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Septembre 2012
    Messages : 37
    Par défaut
    Citation Envoyé par TheEdge Voir le message
    Hello,

    Voici la situation sous Visual Basic 2010 Express:

    Base de données = BD_Dérangements.mdb
    Table = TB_Utilisateur
    Champs = Utilisateur_Username ; Utilisateur PC

    Formulaire = Form_Main.vb
    TextBox = Utilisateur_UsernameTextBox

    La requête sql =
    SELCT Utilisateur_PC FROM TB_Utilisateur WHERE Utilisateur_Username = Utilisateur_UsernameTextBox.text

    Malheureusement, la requête ne fonctionne pas. J'ai essayé avec des ', des " etc mais rien ne fonctionne.

    Par contre, si je met WHERE Utilisateur_Username = 'utilisateur3', la requête renvoie le champ correspondant.

    D'avance merci pour votre aide :-)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Dim req as string = "SELCT Utilisateur_PC FROM TB_Utilisateur WHERE Utilisateur_Username = '" & Utilisateur_UsernameTextBox.text & "'"

  3. #3
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2012
    Messages : 5
    Par défaut
    Merci Joki. Malheureusement, cela ne fonctionne toujours pas.

    Comment doit être la requête dont la fonction WHERE comporte une textbox dans le concepteur de vue sous Visual Basic 2010 ?

    Merci beaucoup

  4. #4
    Membre confirmé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Septembre 2012
    Messages
    37
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Septembre 2012
    Messages : 37
    Par défaut
    Met un point d'arrêt après l'instanciation de ta variable qui contient ta requête, et dis nous ce qu'elle te retourne.

    Pour l'exemple que je t'ai donné la dernière fois met un point d'arrêt après "Dim req as String = ..."
    Et regarde ce que la variable req te retourne?

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2012
    Messages : 5
    Par défaut
    Alors, quand je mets le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        Private Sub BT_Search_User_Click(sender As System.Object, e As System.EventArgs) Handles BT_Search_User.Click
     
            Dim req As String = "SELECT Utilisateur_PC FROM TB_Utilisateur WHERE Utilisateur_Username = '" & Utilisateur_UsernameTextBox.text & "'"
     
        End Sub
    J'ai le message suivant :
    Erreur 1 'Utilisateur_UsernameTextBox' n'est pas déclaré. Il peut être inaccessible en raison de son niveau de protection.

    Donc je ne peux pas tester (me demande de tester sous l'ancien build qui fonctionnait).

    Par contre, re-voici les codes, c'est peut-être plus simple

    Générateur de requête -> il faut remplacer = 'utilisateur4' par la valeur de Utilisateur_UsernameTextBox.text Mais j'ai tout essayé et le générateur de requête de Visual Basic ne veut pas reconnaître Utilisateur_UsernameTextBox.text.

    La requête ci-dessous ainsi que le code VB fonctionne. Il me renvoit dans la textbox Utilisateur_PC la valeur du PC correspondant.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT        Utilisateur_PC
    FROM            TB_Utilisateur
    WHERE        (Utilisateur_Username = 'utilisateur4')
    Voici le code VB

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
        Private Sub BT_Search_User_Click(sender As System.Object, e As System.EventArgs) Handles BT_Search_User.Click
     
            Utilisateur_PCTextBox.Text = TB_UtilisateurTableAdapter.RQ_Search_PC
     
        End Sub
    Merci beaucoup de m'aider

  6. #6
    Membre à l'essai
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2012
    Messages : 5
    Par défaut
    Voila, problème résolu avec les requêtes paramétrées et SQL Server Express !

    Merci beaucoup pour vos conseils !

  7. #7
    Modérateur

    Homme Profil pro
    Inscrit en
    Janvier 2007
    Messages
    1 722
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 1 722
    Par défaut
    Bonjour,

    Il ne faut pas utiliser cette façon de faire.
    Passer par les requêtes paramètrées.

    A+, Hervé.
    Traductions d'articles :
    La mémoire en .NET - Qu'est-ce qui va où ?
    Architecture DAL de haute performance et DTO ; Version C# : Partie 1,Partie 2,Partie 3 — Version VB.NET : Partie 1,Partie 2,Partie 3
    N'hésitez pas à consulter la FAQ VB.NET, le cours complet de Philippe Lasserre et tous les cours, articles et tutoriels.

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

Discussions similaires

  1. Requête SQL - if dans le where
    Par dan88 dans le forum Développement
    Réponses: 5
    Dernier message: 30/11/2010, 15h01
  2. [AC-2007] opérateur ET dans condition WHERE
    Par papagei2 dans le forum Requêtes et SQL.
    Réponses: 5
    Dernier message: 13/09/2009, 10h43
  3. [SQL] Requête sql où la condition where ne sert pas
    Par gRaNdLeMuRieN dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 16/05/2007, 09h26
  4. pb Hibernate-HSQL parenthèse dans condition Where
    Par quisera dans le forum Hibernate
    Réponses: 3
    Dernier message: 02/04/2007, 10h11
  5. Réponses: 6
    Dernier message: 24/09/2004, 13h10

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