Bonsoir,
Il manque les ' autour de la valeur récupérée de ta combobox, ton erreur près du "=" vient de là. Si tu ne les mets pas ta valeur n'est pas interprétée comme étant du texte mais comme étant un nom de champ ou autre...
string sql = "SELECT stock FROM produit WHERE Nproduit = '" + Convert.ToString(comboBox1.SelectedItem) + "'";
Au passage tu peux simplifier la lecture du résultat, étant donné que tu ne reçois qu'une valeur tu peux utiliser "ExecuteScalar()" qui récupère la première colonne de la première ligne récupérée.
Au lieu de :
1 2 3 4 5
| Dr = oCom.ExecuteReader();
while (Dr.Read())
{
label6.Text=(Dr[0].ToString());
} |
Tu peux écrire:
1 2 3
| Dr = oCom.ExecuteScalar();
Dr.Read();
label6.Text=Dr[0].ToString(); |
Ou encore ne pas utiliser de SqlDataReader du tout:
label6.Text=oCom.ExecuteScalar().ToString();
Dernière chose si tu utilises un SqlDataReader, n'oublie pas aussi de le fermer, car cela risque de créer des erreurs dans la suite de ton code.
Bonne soirée.
Partager