我使用 Asp.net c# 和 MYSql 作为后端。我正在更新一个表,但表没有更新。表中只有 3 列。
执行命令对象时也不例外。但这会返回 0 值cmd.ExecuteNonQuery()
。
我对此进行了调试,发现 cmd.Parameters 充满了值。如果我在 mysql 中手动运行更新命令,它工作正常。
表格如下
column -- Datatype
ShortText -- varchar
title -- varchar
id -- int
请指导我...
int retVal = 0;
string shortText = ((TextBox)fmvwShortText.FindControl("txtShortText")).Text.Trim();
try
{
int id = Convert.ToInt32(((Label)fmvwShortText.FindControl("lblShrtTextID")).Text);
MySqlConnection con = new MySqlConnection(System.Configuration.ConfigurationManager.AppSettings["conn"]);
cmd = new MySqlCommand();
cmd.Connection = con;
cmd.CommandText = "UPDATE temp_posts SET ShortText=@shrtText WHERE id=@id AND Title=@title";
cmd.Parameters.Add("@shrtText", MySqlDbType.VarChar).Value = shortText;
cmd.Parameters.Add("@title", MySqlDbType.VarChar).Value =Session["EditTitle"].ToString();
cmd.Parameters.Add("@id", MySqlDbType.Int32).Value = id;
con.Open();
retVal = cmd.ExecuteNonQuery();
con.Close();
}
catch (Exception e) { }
return retVal;