Je dois effectuer une mise à jour dans un tableau (Devoirs). Mais il ne s'agit pas seulement de remplacer une ancienne valeur par une nouvelle; à la valeur déjà existante dans la colonne, je dois ajouter (SUM) la nouvelle valeur (la colonne est de type int). C'est ce que je l'ai fait jusqu'à présent, mais je suis coincé:Comment utiliser UPDATE dans ado net
protected void subscribeButton_Click(object sender, EventArgs e)
{
string txtStudent = (selectedStudentLabel.Text.Split(' '))[0];
int studentIndex = 0;
studentIndex = Convert.ToInt32(txtStudent.Trim());
SqlConnection conn = new SqlConnection("Server=.\\SQLEXPRESS;AttachDbFilename=|DataDirectory|\\Database.mdf;Trusted_Connection=True;User Instance=yes");
conn.Open();
string sql2 = "UPDATE student SET moneyspent = " + ?????? + " WHERE id=" + studentIndex + ";";
SqlCommand myCommand2 = new SqlCommand(sql2, conn);
try
{
conn.Open();
myCommand2.ExecuteNonQuery();
}
catch (Exception ex)
{
Console.WriteLine("Error: " + ex);
}
finally
{
conn.Close();
}
}
Que dois-je ajouter intead de ??? pour atteindre mon objectif?
Est-il possible de le faire de cette façon? Je veux éviter d'utiliser de nombreuses requêtes.
Veuillez arrêter de créer des commandes SQL en concaténant des chaînes! C'est le meilleur moyen d'obtenir une injection SQL désagréable: http://en.wikipedia.org/wiki/SQL_injection –
Désolé mon pote mais c'est juste un devoir que je connais bien ce que les risques d'injection SQL sont. Mais merci quand même pour le rappeler. – sfrj