您好任何人都可以请你告诉我为什么这不起作用。什么我试着做,是从数据库中读取数据,然后我想插入一个不同的表和另一个科拉姆。
public void InsertUniqueGymMemberTrainingProgram(string gmemberID, int daynum)
{
using (SqlConnection conn = new SqlConnection(connectionString))
{
SqlCommand cmd = new SqlCommand("procGetProg1Day",conn);
cmd.CommandType = CommandType.StoredProcedure;
//cmd.CommandText = "procGetProg1Day";
//cmd.Connection = conn;
cmd.Parameters.Add(new SqlParameter("@dayNum", SqlDbType.SmallInt));
cmd.Parameters["@dayNum"].Value = daynum;
conn.Open();
SqlDataReader reader = cmd.ExecuteReader();
while(reader.Read())
{
SqlCommand insCmd = new SqlCommand("procInsertUniqueGymMemberTrainingProgram", conn);
insCmd.CommandType = CommandType.StoredProcedure;
// insCmd.CommandText = "procInsertGymMemberTrainingProgram";
insCmd.Parameters.Add(new SqlParameter("@GymMemberID", SqlDbType.NVarChar,20));
insCmd.Parameters["@GymMemberID"].Value = gmemberID;
insCmd.Parameters.Add(new SqlParameter("@ExerciseID", SqlDbType.SmallInt));
insCmd.Parameters["@ExerciseID"].Value = Convert.ToInt32(reader[2]);
insCmd.Parameters.Add(new SqlParameter("@TrainingProgramID", SqlDbType.SmallInt));
insCmd.Parameters["@TrainingProgramID"].Value = Convert.ToInt32(reader[1]);
insCmd.Parameters.Add(new SqlParameter("@DayNumber", SqlDbType.SmallInt));
insCmd.Parameters["@DayNumber"].Value = Convert.ToInt32(reader[0]);
conn.Open();
insCmd.ExecuteNonQuery();
}
reader.Close();
}
}
在提前{S0的}感谢
{C} 和第二
ALTER PROCEDURE [dbo].[procInsertUniqueGymMemberTrainingProgram]
@GymMemberID nvarchar(20),
@ExerciseID smallint,
@TrainingProgramID smallint,
@DayNumber smallint
AS
INSERT INTO GymMemberTrainingProgram(GymMemberID, ExerciseID,TrainingProgramID,DayNumber)
VALUES(@GymMemberID,@ExerciseID,@TrainingProgramID,@DayNumber)