.net中使用update语句执行不成功!我没分送了。大哥们帮帮忙
SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["bookshopConnectionString"].ConnectionString);conn.Open();
SqlCommand com = new SqlCommand("update bookinfo set type=@type,bookname=@bookname,author=@author,translator=@translator,publisher=@publisher,price=@price,discount=@discount,cover=@cover,introduce=@introduce,hit=@hit,quantity=@quantity where id='" + Label1.Text + "'",conn);
com.Parameters.AddWithValue("@type", TextBox2.Text);
com.Parameters.AddWithValue("@bookname", TextBox1.Text);
com.Parameters.AddWithValue("@author", TextBox3.Text);
com.Parameters.AddWithValue("@translator", TextBox4.Text);
com.Parameters.AddWithValue("@publisher", TextBox5.Text);
com.Parameters.AddWithValue("@price", TextBox6.Text);
com.Parameters.AddWithValue("@discount", TextBox7.Text);
com.Parameters.AddWithValue("@cover", TextBox8.Text);
com.Parameters.AddWithValue("@introduce", TextBox9.Text);
com.Parameters.AddWithValue("@hit", Label11.Text);
com.Parameters.AddWithValue("@quantity", TextBox10.Text);
SqlDataReader dr = com.ExecuteReader();
if (dr.Read())
{
Response.Write("<script>alert('修改成功!');location.href='bookdetails.aspx'</script>");
conn.Close();
}
else
{
Response.Write("<script>alert('修改失败!')</script>");
} --------------------编程问答-------------------- --------------------编程问答-------------------- 帮帮忙!谢谢了 --------------------编程问答-------------------- 报什么错啊? --------------------编程问答-------------------- 为什么要ExecuteReader()呢? --------------------编程问答-------------------- 告诉下报什么错 --------------------编程问答-------------------- 没执行呀!! --------------------编程问答-------------------- 要用 int i=com.ExcuteNoneQuary();啊 不能用SqlDataReader dr = com.ExecuteReader();
i大于0就表示更新成功了。
--------------------编程问答-------------------- 没执行的原因也可能是数据库里的约束关系导致的。 --------------------编程问答-------------------- 把SqlDataReader dr = com.ExecuteReader();
if (dr.Read())
换成if(com.ExcuteNoneQuary()==1) --------------------编程问答-------------------- com.ExcuteNoneQuary() --------------------编程问答-------------------- 要用 int i=com.ExcuteNoneQuary();啊 不能用SqlDataReader dr = com.ExecuteReader();
i大于0就表示更新成功了。
这个回答是对的,查询时应SqlDataReader dr = com.ExecuteReader();
增加,删除,修改用int i=com.ExcuteNoneQuery();
--------------------编程问答-------------------- 是啊,怎么能范这种错误,com.ExecuteReader(); 是读取数据
com.ExcuteNoneQuery(); 才是执行语句啊 --------------------编程问答-------------------- --------------------编程问答-------------------- 我用了com.ExcuteNoneQuery();显示更改成功,可是数据库中的数据还是不变啊 --------------------编程问答--------------------
完全正确!! --------------------编程问答-------------------- SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["bookshopConnectionString"].ConnectionString);
conn.Open();
SqlCommand com = new SqlCommand("update bookinfo set type=@type,bookname=@bookname,author=@author,translator=@translator,publisher=@publisher,price=@price,discount=@discount,cover=@cover,introduce=@introduce,hit=@hit,quantity=@quantity where id='" + Label1.Text + "'",conn);
com.Parameters.AddWithValue("@type", TextBox2.Text);
com.Parameters.AddWithValue("@bookname", TextBox1.Text);
com.Parameters.AddWithValue("@author", TextBox3.Text);
com.Parameters.AddWithValue("@translator", TextBox4.Text);
com.Parameters.AddWithValue("@publisher", TextBox5.Text);
com.Parameters.AddWithValue("@price", TextBox6.Text);
com.Parameters.AddWithValue("@discount", TextBox7.Text);
com.Parameters.AddWithValue("@cover", TextBox8.Text);
com.Parameters.AddWithValue("@introduce", TextBox9.Text);
com.Parameters.AddWithValue("@hit", Label11.Text);
com.Parameters.AddWithValue("@quantity", TextBox10.Text);
int result=com.ExecuteNonQuery();
if (result>0)
{
Response.Write(" <script>alert('修改成功!');location.href='bookdetails.aspx' </script>");
conn.Close();
}
else
{
Response.Write(" <script>alert('修改失败!') </script>");
} --------------------编程问答-------------------- 显示更改成功而数据库数据没变?那你把你的语句放查询分析器里运行下,看看能不能更改成功。 --------------------编程问答--------------------
where id=" + Label1.Text + "",
改成这样试下
补充:.NET技术 , ASP.NET