我試圖創建一個考勤表來記錄學生參與的活動。下面的代碼在創建新活動時觸發。創建新活動時,我想將所有學生記錄插入考勤表並將默認的考勤屬性標記爲false。 (出席屬性爲標記出勤,設爲0)asp SQL語句將多行記錄插入到表中
問題是出席表不能填充。代碼將停止在該行繼續:numofRecordsAffected = command.ExecuteNonQuery();
我想從學生表中獲取所有sigstudentid(s)。我不知道在這種情況下是否推薦使用foreach(),但任何幫助將不勝感激。
我需要一個解決方案!
public int InsertAttendance(int num)
{
SqlDataAdapter adapter = new SqlDataAdapter();
SqlCommand command = new SqlCommand();
SqlConnection connect = new SqlConnection();
DataSet dataset = new DataSet();
String sqlText = "SELECT * FROM Student";
connect.ConnectionString = "Data Source=TECKISTTLE; Initial Catalog=Assignment; Integrated Security=True";
command.Connection = connect;
command.CommandText = sqlText;
int numofRecordsAffected = 0;
adapter.SelectCommand = command;
connect.Open();
adapter.Fill(dataset, "StudentData");
sqlText = "";
foreach (DataRow item in dataset.Tables["StudentData"].Rows)
{
sqlText += " INSERT INTO Attendance(SIGStudentID, ActivityId, Attendance) VALUES(@SIGStudentID,@ActivityId,@Attendance); ";
command.Parameters.Clear();
command.Parameters.Add("@SIGStudentID", SqlDbType.Int);
command.Parameters["@SIGStudentID"].Value = Convert.ToInt32(item["SIGStudentID"]);
command.Parameters.Add("@ActivityId", SqlDbType.Int);
command.Parameters["@ActivityId"].Value = num;
command.Parameters.Add("@Attendance", SqlDbType.Bit);
command.Parameters["@Attendance"].Value = 0;
}
numofRecordsAffected = command.ExecuteNonQuery();
connect.Close();
return numofRecordsAffected;
}
您正在使用哪個版本的SQL Server? –
我正在使用Microsoft Sql服務器管理工作室2012 –
這是**不** ** ASP經典(這將是VBA代碼只) - 我假設你的意思是'asp.net'而不是 –