我在c#中添加了一個表單,將數據添加到我的數據表中,它工作正常,我想要的只是在插入數據時返回消息,而我具有帶的問題,代碼如下:在執行SQL語句時執行If語句時出現問題 - c#
conn.Open();
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = ("INSERT INTO datatable (Number_Plate,Registered_Keeper,Make,Model,Year_Of_Make,Colour,Engine_Size,Transmission,Fuel_Type) Values (@Number_Plate,@Registered_Keeper,@Make,@Model,@Year_Of_Make,@Colour,@Engine_Size,@Transmission,@Fuel_Type)");
cmd.Parameters.AddWithValue("@Number_Plate", Plate.Text);
cmd.Parameters.AddWithValue("@Registered_Keeper", Keeper.Text);
cmd.Parameters.AddWithValue("@Make", Make.Text);
cmd.Parameters.AddWithValue("@Model", Model.Text);
cmd.Parameters.AddWithValue("@Year_Of_Make", Year.Text);
cmd.Parameters.AddWithValue("@Colour", Colour.Text);
cmd.Parameters.AddWithValue("@Engine_Size", Engine.Text);
cmd.Parameters.AddWithValue("@Transmission", Transmission.Text);
cmd.Parameters.AddWithValue("@Fuel_Type", Fuel.Text);
SqlDataReader reader = cmd.ExecuteReader();
if (cmd.ExecuteNonQuery()==1)
{
button1.Visible = false;
label10.Visible = true;
}
else
{
button1.Visible = false;
label10.Text = "Data Not Added Please try Again!";
label10.Visible = true;
}
}
當我運行的代碼,我得到If語句ANE的錯誤是一個問題:
目前已經是一個開放的DataReader與此命令關聯,必須先關閉該命令。
任何幫助表示讚賞。
爲什麼你有'SqlDataReader reader = cmd.ExecuteReader();'在那裏?這沒有任何意義......而錯誤就是完全告訴你。 – 2013-03-12 17:41:57
請閱讀['using'語句](http://msdn.microsoft.com/en-us/library/yh598w02(v = vs.110).aspx)。 'SqlConnection','SqlCommand'和'SqlDataReader'(儘管你不需要它)都實現了'IDisposable'。 – 2013-03-12 17:42:20