主キー セッション ID を持つセッション マークを持つ 3 つのテーブルと、主キーとして学生 ID を持つ別のテーブル学生と、外部キーとして学生 ID とセッション ID を持つ 3 番目のテーブル データがあることを知る必要があります。ここで、マークがセッション マーク テーブルに格納されるように、グリッド ビューで各生徒のマークを更新する必要があります。私はこのクエリを使用しています
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();
しかし、このクエリは、グリッド ビューに配置されているマークを更新する必要がある各行に同じマークを追加しています。どこの句に問題があると思いますか。