Je ne parviens pas à me connecter et à ajouter les éléments à ma base de donnée avec le code ci-dessous. Cela fait un moment que je planche dessus mais j'ai un problème au niveau du : cmd.ExecuteNonQuery();, bien que le code ne semble comportait aucune erreur d'après les indications sur VisualStudio.
Si une âme charitable pouvait m'aider, je vous en remercie :)
Message modifié par la modération
Pour une lecture plus facile du code, à l'avenir utilisez les balises, VOIR CETTE PAGE
Voici le code en question:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using MySql.Data.MySqlClient;
namespace Projet_BTS_AppFinal
{
public partial class BTS : Form
{
public BTS()
{
InitializeComponent();
}
MySqlConnection cn;
bool Connecté = false;
private void button1_Click(object sender, EventArgs e)
{
if (button1.Text == "Se connecter")
{
cn = new MySqlConnection("SERVER=localhost;PORT=3306;DATABASE=portique;UID=root;PWD=23021998;");
try
{
if (cn.State == ConnectionState.Closed) { cn.Open(); } //tenter d'ouvrir la connexion a la base donnée
button1.Text = "Se déconnecter";
Connecté = true;
}
catch (Exception ex) { MessageBox.Show(ex.Message); }
}
else //se déconnecter
{
cn.Close();
button1.Text = "Se connecter";
Connecté = false;
}
}
private void button2_Click(object sender, EventArgs e)
{
if (textBox1.Text == "")
{
MessageBox.Show("entrez un numéro EPC.");
}
else if (textBox2.Text == "")
{
MessageBox.Show("Entrez un nom.");
}
else if (textBox3.Text == "")
{
MessageBox.Show("Entrez le nom du fabriquant.");
}
else if (textBox4.Text == "")
{
MessageBox.Show("Entrez le prix.");
}
else if (textBox5.Text == "")
{
MessageBox.Show("Entrez la quantité de produit.");
}
else
{
if (Connecté)
{
MySqlCommand cmd = new MySqlCommand("INSERT INTO portique(Numero, Nom, Fabriquant, Prix, Stock) VALUES(@Numero,@Nom,@Fabriquant,@Prix,@Stock)");
cmd.Parameters.AddWithValue("@Numero", textBox1.Text);
cmd.Parameters.AddWithValue("@Nom", textBox2.Text);
cmd.Parameters.AddWithValue("@Fabriquant", textBox3.Text);
cmd.Parameters.AddWithValue("@Prix", textBox4.Text);
cmd.Parameters.AddWithValue("@Stock", textBox5.Text);
cmd.ExecuteNonQuery();
cmd.Parameters.Clear();
MessageBox.Show("Ajouté.");
}
else
{
MessageBox.Show("vous n'êtes pas connecté à la base de données");
}
}
}
}
}
yg_be
Messages postés23405Date d'inscriptionlundi 9 juin 2008StatutContributeurDernière intervention20 décembre 2024Ambassadeur1 557 10 juin 2021 à 11:35
Salut !
Tu peux modifier cette ligne en écrivant ceci :
MySqlCommand cmd = new MySqlCommand("INSERT INTO portique VALUES(@Numero,@Nom,@Fabriquant,@Prix,@Stock)",con);
10 juin 2021 à 12:23
10 juin 2021 à 12:51
11 juin 2021 à 12:38