Bonjour,

Mon application est une gestion de pizza, je charge d'abord la table pizza dans un datagridview, puis la ligne selectioné est mise dans 1 listbox et enfin je voudrais que en cochant une checkbox le prix de la pizza apparaisse dans la listbox.
Donc tout marche sauf la dernière partie.

Voila j'ai un problème, tout marche SAUF la deuxième requete : "select prix from prix inner join pizza on prix.num_pizza=pizza.num_pizza where nom_pizza=+libelle_pizza";

Je n'arrive pas à faire comprendre à cette "abruti" de requete que je veux le prix de la pizza dont le nom est contenu dans la variable libelle_pizza. Sachant que la variable libelle_pizza est la ligne sélectionnée dans le datagridview.

Tout le reste du code marche et si je change cette requete par exemple : select prix from prix) ca marche donc vraiment je sais pas comment faire.

D'avance merci.

Voici le code :


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
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.OleDb;
 
namespace WindowsApplication1
{
public partial class Form2 : Form
{
string NomClient;
string Adresse;
OleDbConnection cnx;
OleDbCommand cmd;
OleDbDataReader rdr;
string chaine, sql,sql2;
string libelle_pizza,prix;
 
 
 
public Form2(string nom_client, string adresse)
{
InitializeComponent();
NomClient=nom_client;
Adresse=adresse;
}
 
private void Form2_Load(object sender, EventArgs e)
{
chaine = "provider=microsoft.jet.oledb.4.0;data source=" + "pizza.mdb";
cnx = new OleDbConnection(chaine);
sql = "select nom_pizza,ingredient,épicé,végétarien from pizza";
cmd = new OleDbCommand(sql, cnx);
cnx.Open();
rdr = cmd.ExecuteReader();
while (rdr.Read())
{
dataGridView1.Rows.Add(rdr[0].ToString(), rdr[1].ToString(), rdr[2].ToString(), rdr[3].ToString());
}
libelle_pizza = dataGridView1.CurrentCell.Value.ToString();
 
}
 
private void button1_Click(object sender, EventArgs e)
{
listBox1.Items.Add(libelle_pizza);
 
MessageBox.Show("essai= "+libelle_pizza);
}
 
private void checkBox2_CheckedChanged(object sender, EventArgs e)
{
 
cnx.Close();
sql2 = "select prix from prix inner join pizza on prix.num_pizza=pizza.num_pizza where nom_pizza=+libelle_pizza";
cmd = new OleDbCommand(sql2, cnx);
cnx.Open();
rdr = cmd.ExecuteReader();
while (rdr.Read())
{
prix = rdr[0].ToString();
listBox1.Items.Add(prix);
}
}
 
 
 
 
}
}