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

C# Discussion :

Condition sur un textBox qui renvoi une requête vers MYSQL


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Homme Profil pro
    Informatique industrielle
    Inscrit en
    Juin 2018
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Informatique industrielle
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2018
    Messages : 9
    Par défaut Condition sur un textBox qui renvoi une requête vers MYSQL
    Bonjour,

    Le but c'est d'envoyer une requête MYSQL pour verifier si la valeur saisie dans le textBox se trouve déjà dans ma colonne (Numéro de pièce) du tableau (pieces)

    ça sera donc une condition sur mon textBox
    Si je mets RIEN dans mon textBox ça va me permettre d'ajouter autant de valeur (DIFFÉRENTE) int sur ma base de données Mysql
    Sinon il vérifie déjà si la nouvelle valeur saisie ne se trouve déjà dans ma colonne

    un truc du genre :
    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
     
    if (textBox.Text = "")
    {
        MessageBox.Show("Veuillez entrez le numéro de pièce s'il vous plaît !");
    }
    else if
    {              
         string insertQuery = "SELECT `Numéro de Pièce` FROM `pieces` WHERE 1";
         if (textBox == executeMyQuery(insertQuery))                  // ouvrir et fermer une connexion vers ma base de donnée
        {
               MessageBox.Show("Pièce déjà faite !");
        }
        else
        {
               string qs= "INSERT INTO `pieces`(`Numéro de Pièce`) VALUES('" + this.textBox.Text + "');
               executeMyQuery(qs);                 
         }
    MERCI D'AVANCE

  2. #2
    Expert confirmé
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 450
    Par défaut
    Bonjour,
    Quelle est la question ?

    Tatayo.

  3. #3
    Membre habitué
    Homme Profil pro
    Informatique industrielle
    Inscrit en
    Juin 2018
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Informatique industrielle
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2018
    Messages : 9
    Par défaut
    Salut tatayo et Merci pour ta réponse

    PS : le code en dessous ne marche pas mais je veux réaliser les mêmes requêtes

    Me question est la suivante : comment faire une condition sur un textBox et envoie une requete vers ma BDD !

    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
     
    if (textBox.Text = "")
    {
        MessageBox.Show("Veuillez entrez le numéro de pièce s'il vous plaît !");
    }
    else if
    {              
         string insertQuery = "SELECT `Numéro de Pièce` FROM `pieces` WHERE 1";
         if (textBox == executeMyQuery(insertQuery)                  // ouvrir et fermer une connexion vers ma base de donnée
        {
               MessageBox.Show("Pièce déjà faite !");
        }
        else
        {
               string insertQuery = "INSERT INTO `pieces`(`Numéro de Pièce`) VALUES('" + this.textBox.Text + "');
               executeMyQuery(insertQuery);                 
         }
    }

  4. #4
    Expert confirmé
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 450
    Par défaut
    Le code ne marche pas, ce n'est pas une erreur…

    Voici la requête qui est lancée:
    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    SELECT `Numéro de Pièce` FROM `pieces` WHERE 1
    A quel moment envoies-tu le numéro de pièce à MySQL ? Jamais. Mais tu sais comment faire (ligne 15 !).

    Accessoirement, je pense que la ligne 15 ne compile pas, car tu déclares une variable insertQuery qui existe déjà (déclarée ligne 8).

    Tatayo.

  5. #5
    Membre habitué
    Homme Profil pro
    Informatique industrielle
    Inscrit en
    Juin 2018
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Informatique industrielle
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2018
    Messages : 9
    Par défaut
    Au-delà si le code marche ou pas, ce que je veux c'est réaliser une condition de requete sur un textBox :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
         if (textBox == executeMyQuery(insertQuery))
    la syntaxe ne marche pas car je l'ai inventer et j'en cherche une qui fait le même boulot

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT `Numéro de Pièce` FROM `pieces` WHERE 1
    me permet de sélectionner la colonne entière (Pièce) du tableau (pieces)
    et après je veux chercher dans LE RÉSULTA de la requête (SELECT) si ce numéro est déja saisi ou pas

    MERCI

  6. #6
    Expert confirmé
    Avatar de popo
    Homme Profil pro
    Analyste programmeur Delphi / C#
    Inscrit en
    Mars 2005
    Messages
    2 994
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Analyste programmeur Delphi / C#
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mars 2005
    Messages : 2 994
    Par défaut
    Je ne suis pas familier de MySQL mais cette requête me parait bizarre :
    SELECT `Numéro de Pièce` FROM `pieces` WHERE 1
    Where 1 !
    Il ne manquerait pas quelque chose ?

    D'ailleurs si tu veux réellement tester le numéro de pièce ne serait-il pas plus judicieux de faire ton where dessus.
    Genre Where `Numéro de Pièce` = '" + textBox.Text + "'.

    Sinon, deux conseils :
    1) Évite les nom de champs avec des espaces ou des caractères accentués.
    2) Passe par des requêtes paramétrées.

  7. #7
    Expert confirmé
    Homme Profil pro
    Responsable Données
    Inscrit en
    Janvier 2009
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 51
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Responsable Données

    Informations forums :
    Inscription : Janvier 2009
    Messages : 5 450
    Par défaut
    Pour la condition dans la requête, vois la réponse de popo.
    Maintenant tu aurais du trouver tout seul. Tu sais passer un paramètre pour la requête d'insertion, tu sais donc faire de même pour le SELECT.
    Concernant le retour de la requête, on ne connais pas la méthode executeMyQuery, on ne peut donc pas deviner ce qu'elle renvoie: Un booléen qui indique si la requête a fonctionné, une collection d'objet qui représente le résultat du select, autre chose ?

    Tatayo.

  8. #8
    Membre habitué
    Homme Profil pro
    Informatique industrielle
    Inscrit en
    Juin 2018
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34
    Localisation : France, Moselle (Lorraine)

    Informations professionnelles :
    Activité : Informatique industrielle
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2018
    Messages : 9
    Par défaut
    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
            public void executeMyQuery(string query)
            {
                try
                {
                    openConnection();
                    command = new MySqlCommand(query, connection);
     
                    if (command.ExecuteNonQuery() == 1)
                        MessageBox.Show("Enrée rajoutée à la base de donnée");
                    else
                        MessageBox.Show("Erreur de connection avec la base de donnée !");
                }
                catch (Exception ex)
                {
                    MessageBox.Show(ex.Message);
                }
                finally
                {
                    closeConnection();
                }
            }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
            public void openConnection()
            {
                if (connection.State == ConnectionState.Closed)
                    connection.Open();
            }
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
            public void closeConnection()
            {
                if (connection.State == ConnectionState.Open)
                    connection.Close();
            }

  9. #9
    Membre Expert
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Octobre 2013
    Messages
    1 563
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Industrie

    Informations forums :
    Inscription : Octobre 2013
    Messages : 1 563
    Par défaut
    Citation Envoyé par EL.Mardi Voir le message
    je veux chercher dans LE RÉSULTA de la requête (SELECT) si ce numéro est déja saisi ou pas
    Tu fais une requête qui te retourne les enregistrements dont le numéro de pièce est égal à ta saisie : SELECT * FROM PIECES WHERE NUMERO_PIECE = TextBoxPiece.Text

    Si ta requête retourne un résultat c'est que la pièce existe déjà.

Discussions similaires

  1. Condition sur un textBox qui renvoi une requête vers MYSQL
    Par EL.Mardi dans le forum Windows Forms
    Réponses: 1
    Dernier message: 13/06/2018, 10h51
  2. Réponses: 11
    Dernier message: 22/01/2014, 19h30
  3. Réponses: 2
    Dernier message: 11/04/2008, 23h23
  4. Requête qui renvoie une liste de données
    Par fougna dans le forum Langage SQL
    Réponses: 5
    Dernier message: 02/08/2007, 12h05
  5. Réponses: 3
    Dernier message: 06/10/2006, 14h55

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