none
Ajouter dans une BDD a partir d un element selectionne dans une listview RRS feed

  • Discussion générale

  • Bonjour !

    J'ai créé une base de données et j'ai créé un logiciel avec c# afin de m'y connecté et d'interagir avec.

    J'ai créé une listview avec les éléments de ma base de données à l'intérieur, j'ai créé un bouton permettant d'ouvrir une nouvelle form afin d'ajouter une information en plus à un élément sélectionnée dans la listview.

    Par exemple la requête sql va prendre en compte l'élément selectionné mais aussi les éléments des textbox de la deuxième form.

    Pour être plus précis, Les éléments dans la listview sont des informations de véhicule(Marque, Modèle, Année, kilométrage, etc) lorsque que je clique sur un vehicule ça m'ouvre la deuxième form et à l'intérieur j'écris les coordonnées d'un client(nom, prenom, numero, adresse, date vente) ayant acheté le véhicule sélectionné auparavant.ce qui va faire que dans ma base de données le véhicule aura été acheté par le client.

    Mon problème c'est que la requête que j'ai créer fonctionne bien lorsque je la rentre sur mysql, c'est sur c# que ça ne fonctionne pas, ça doit être mon code qui n'est pas bon mais je ne sais pas comment faire, il ne prend pas en compte les informations sélectionnées dans ma listview. 

    Auriez-vous un idée?

    Merci.

    Voici mon code:

    public partial class Ajouter_Vente : Form
        {
    
            private concession _concession;  public Ajouter_Vente(concession concession)
            {
                InitializeComponent();
                _concession = concession;
            }
    
            MySqlConnection connexion;
    
            private void bt_ajouter_Click(object sender, EventArgs e)
            {
                using (concession concession =new concession())
                connexion = new MySqlConnection("DATABASE=Concession; SERVER=localhost; user id=root; pwd=root");
                connexion.Open();
                if (_concession.lv_vehicule.SelectedItems.Count > 0)
                {
                    ListViewItem element = _concession.lv_vehicule.SelectedItems[0];
                    string Kilometrage = element.SubItems[7].Text;
                    string Date_CT = element.SubItems[8].Text;
                    string Option_Vehicule = element.SubItems[9].Text;
                    string Puissance_Fiscale = element.SubItems[10].Text;
    
                    MySqlCommand commande = new MySqlCommand("INSERT INTO client (Nom, Prenom, Adresse, Numero) VALUES (@Nom, @Prenom, @Adresse, @Numero); INSERT INTO Client_Stock_Vente (Id_Client, Id_Stock, Date_Vente) VALUES ((SELECT Id_Client FROM Client WHERE Nom = @Nom AND Prenom = @Prenom AND Adresse = @Adresse AND         numero = @Numero), (SELECT Id_Stock FROM Stock WHERE Kilometrage = @Kilometrage AND Date_CT = @Date_CT AND Option_Vehicule = @Option_Vehicule AND Puissance_Fiscale = @Puissance_Fiscale), @Date_Vente);", connexion);
    
                    commande.Parameters.AddWithValue("@Nom", tb_nom.Text);
                    commande.Parameters.AddWithValue("@Prenom", tb_prenom.Text);
                    commande.Parameters.AddWithValue("@Adresse", tb_adresse.Text);
                    commande.Parameters.AddWithValue("@Numero", tb_numero.Text);
                    commande.Parameters.AddWithValue("@Date_Vente", Convert.ToDateTime(tb_date_vente.Text).ToString("yyyy-MM-dd"));
    
                    commande.Parameters.AddWithValue("@Kilometrage", Kilometrage);
                    commande.Parameters.AddWithValue("@Date_CT", Date_CT);
                    commande.Parameters.AddWithValue("@Option_Vehicule", Option_Vehicule);
                    commande.Parameters.AddWithValue("@Puissance_Fiscale", Puissance_Fiscale);
    
                    
                    commande.ExecuteNonQuery();
                    commande.Parameters.Clear();
                    lb_vente.Text = "Vehciule vendu.";
                }
            }
        }

    vendredi 4 janvier 2019 17:25