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

Windows Forms Discussion :

combobox lie a la BD [Débutant]


Sujet :

Windows Forms

  1. #1
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 6
    Points : 8
    Points
    8
    Par défaut combobox lie a la BD
    bonjour tout le monde,
    je sais bien que je suis null en C# mais le probleme c'est que j ai une application a faire pour mon pfe
    alors je vous en prie de m'aider:
    j'ai un combobox lié a une base sql server qui gére les nom des ste des fournisseur
    je voudrai réaliser le code qui me permet en selectionnant un choix de ce combobox avoir le id de fournisseur correspondant dans un text box nomé id_fournisseur
    merciiiiiiiiii d avance

    voici le code que j ai essayé:

    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
    private void Fournisseur_SelectedIndexChanged(object sender, EventArgs e)
            {
                //connexion 
     
                SqlConnection cnx = new SqlConnection("Data Source=localhost;Initial Catalog=BD;Integrated Security=SSPI;");
                cnx.Open();
     
     
                    string req = "select Id_fournisseur from fournisseur where Nom_stef= '" + Fournisseur.Text + "' ";
                    SqlCommand cmd = new SqlCommand(req, cnx);
                    SqlDataReader r = cmd.ExecuteReader();
                    r.Read();
                    //remplissage des champs 
     
     
                    id_fournisseur.Text = (string)r["Id_fournisseur"].ToString();
     
            }
    l'erreur lors de l'ajout et la modificatin est:

    Tentative non valide de lecture lorsque aucune donnée n'est présente.

  2. #2
    Invité
    Invité(e)
    Par défaut
    Déjà il faudrait vérifier que tu as une donnée présent.


    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
    private void Fournisseur_SelectedIndexChanged(object sender, EventArgs e)
    {
       //connexion
     
       SqlConnection cnx = new SqlConnection("Data Source=localhost;Initial      Catalog=BD;Integrated Security=SSPI;");
       cnx.Open();
     
     
       string req = "select Id_fournisseur from fournisseur where Nom_stef= '" +   Fournisseur.Text + "' ";
       SqlCommand cmd = new SqlCommand(req, cnx);
       SqlDataReader r = cmd.ExecuteReader();
       If(r.Read() == true) {
            //remplissage des champs
            id_fournisseur.Text = (string)r["Id_fournisseur"].ToString();
       }
    }

  3. #3
    Futur Membre du Club
    Femme Profil pro
    Étudiant
    Inscrit en
    Avril 2012
    Messages
    6
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2012
    Messages : 6
    Points : 8
    Points
    8
    Par défaut
    merciiiiiiiiiiiiiiiiiiiiiiiiiii beaucoup pour ton aide cca a marché

  4. #4
    Membre émérite Avatar de meziantou
    Homme Profil pro
    Ingénieur R&D
    Inscrit en
    Avril 2010
    Messages
    1 223
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Canada

    Informations professionnelles :
    Activité : Ingénieur R&D
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2010
    Messages : 1 223
    Points : 2 439
    Points
    2 439
    Par défaut
    Je rajouterai qu'il ne faut pas prendre de mauvaise habitude : Pour les requêtes SQL il faut utiliser les requêtes paramétrées.
    Imagine que tu ait un fournisseur qui s'appelle
    Eh ben ton code il fonctionne plus

    De plus il faut fermer les connexions ouvertes et plus généralement d'appeler la méthode Dispose de tous les objets implémentants l'interface IDisposable.
    Le plus simple est d'utiliser using (ca appelle la méthode Dispose pour toi)
    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
    using(SqlConnection cnx = new SqlConnection("Data Source=localhost;Initial      Catalog=BD;Integrated Security=SSPI;"))
    {
       cnx.Open();
     
     
       string req = "select Id_fournisseur from fournisseur where Nom_stef= '" +   Fournisseur.Text + "' ";
       using(SqlCommand cmd = new SqlCommand(req, cnx))
       {
           using(SqlDataReader r = cmd.ExecuteReader())
           {
               If(r.Read() == true) 
               {
                   //remplissage des champs
                   id_fournisseur.Text = (string)r["Id_fournisseur"].ToString();
               }
           }
       }
    }

  5. #5
    Invité
    Invité(e)
    Par défaut
    N'oublie pas de mettre ton post en résolu.

    Et pour résoudre le problème de l'apostrophe, tu peux écrire

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Fournisseur.Text.Replace("'","''")
    à la place de


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

Discussions similaires

  1. effacer contenu d'une combobox liée
    Par christi dans le forum Windows Forms
    Réponses: 13
    Dernier message: 04/02/2009, 17h25
  2. Combobox liées entre elles
    Par Psychoze dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 05/03/2008, 13h30
  3. Combobox liée a un ArrayList
    Par Yoshio dans le forum Windows Forms
    Réponses: 9
    Dernier message: 29/01/2008, 19h27
  4. Combobox liées aux precdentes
    Par titeZ dans le forum IHM
    Réponses: 1
    Dernier message: 01/10/2007, 19h07
  5. [c#][.NET 2.0] Datagrid avec 2 combobox liées entre elles
    Par axl63800 dans le forum Windows Forms
    Réponses: 6
    Dernier message: 20/04/2007, 09h31

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