我在ASP.NET中的mysql查询未运行。我已经打印出字符串会话,所以我知道我具有它的值,并且连接字符串正在所有其他方法中工作,所以我知道问题不存在。在PHPMyadmin中手动运行命令可以正常工作。看起来相同的另一种方法,仅适用于select cmd。
public IActionResult DeleteProfile()
{
string session = HttpContext.Session.GetString("session"); /* gets value (customerid) for user session */
MySqlConnection conn = new MySqlConnection(connectionString);
try
{
conn.Open();
string cmdtxt = "UPDATE customer SET active = '0' WHERE customerid = @session";
MySqlCommand cmd = new MySqlCommand(cmdtxt, conn);
/**************** SQL PARAMETER ********///
MySqlParameter parameter = new MySqlParameter();
cmd.Parameters.AddWithValue("@session", session);
/**************** SQL PARAMETER ********///
}
catch (Exception ex)
{
ViewBag.error = "Connection Error!\n" + ex.Message;
}
finally
{
conn.Close();
ViewBag.error = "Account deleted";
HttpContext.Session.Remove("session");
}
return View("../Account/Index");
}
答案 0 :(得分:4)
您正确地实例化了MySqlCommand
并分配了适当的参数,但是您对该命令没有任何作用。
您需要执行查询,以便将查询发送到数据库服务器:
cmd.ExecuteNonQuery();