我需要知道我有 3 个表,其中一个带有会话标记,主键会话 id,另一个表学生,学生 id 作为主键,第三个表数据,学生 id 和会话 id 作为外键。现在我需要在网格视图中更新每个学生的分数,以便将分数存储在会话分数表中。我正在使用这个查询
string hourly1;
string hourly2;
string student_id;
for (int i = 0; i < this.dataGridView1.Rows.Count - 1; i++)
{
hourly1 = dataGridView1[1,i].Value.ToString();
hourly2 = dataGridView1[2,i].Value.ToString();
student_id = Convert.ToString(dataGridView1[3, i].Value);
SqlCommand cmd = new SqlCommand("UPDATE SessionalMarks SET " +
"SessionalMarks.Hourly1Marks = '" + hourly1 + "'," + "SessionalMarks.Hourly2Marks = '" + hourly2 + "'from Student,DATA where Student.StudentId=DATA.StudentId AND Student.StudentId='" + student_id + "'", conn);
conn.Open();
cmd.ExecuteNonQuery();
conn.Close();
但是此查询在需要更新放置在网格视图中的标记的每一行中添加相同的标记,我认为 where 子句中存在问题,请有人帮助我。