Bonjour,
A partir d'une table Table1(id1,nom,adresse) d'une base de données j'affiche mes données correctement dans un GridView, jusqu'au là je n'ai pas de souci.
dessous de cette GridView j'ai un bouton Ajouter et un ensemble de zones de texte dont je saisis des infos que je dois insérer dans une autre table Table2(id2,id1,...) dont ses champs l'id1 de Table est une clé étrangère.
Mon objectif et d'insérer les infos remplis dans les zones texte dans Table2 toute en récupérant la valeur de Table.id1 au moment de sélection d'une ligne de la GridViex.
Ex :
Table 1
id1 * nom * adresse *
---.*---- *-------- *
008* Nam * Adress * //<-- Je sélectionne cette Ligne dans DataGridView
* * *
* * *
l'id1 récupéré est ' 008 '.
Dans Table2, je dois insérer un nouvel enregistrement dont id1 est 008.
Table 2
id2 * id1 * Qte * Reference *
---.*---- *---- *---------- *
1 * 008 * 20 * Ref001 *
* * * *
* * * *
Mon bouton Ajourer a code suivant :
protected void btn_ajouter_Click(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection("server=localhost;database=test;user id=han_user;password=1234");
SqlCommand cmd = con.CreateCommand();
try
{
con.Open();
cmd.CommandText = "insert into Table2 values (@id1,@Qte,@Reference )";
cmd.Parameters.Add("@id1", SqlDbType.Int, 10);
cmd.Parameters.Add("@Qte", SqlDbType.Int, 10);
cmd.Parameters.Add("@Reference ", SqlDbType.Varchar, 10);
cmd.Parameters["@id1"].Value = GridViex.SelectedValue;
cmd.Parameters["@Qte"].Value = txt_Qte.Text;
cmd.Parameters["@Reference "].Value = txt_Reference.Text;
cmd.ExecuteNonQuery();
}
catch (SqlException)
{
}
finally
{
con.Close();
}
}
Merci pour toute initiative ..
Partager