.net 我尝试更新姓名记录,但无法更新

oxcyiej7  于 2023-01-03  发布在  .NET
关注(0)|答案(1)|浏览(130)
protected void submit_Click(object sender, EventArgs e)
{
    Label2.Text = Session["id"].ToString();
     SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings["ConnString"].ConnectionString);
    SqlCommand cmd = con.CreateCommand();
    con.Open();
   
   string UpdateQuery = "Update register set name='" + name.Text + "'where email='" + Session["id"] + "'";
  
   SqlCommand cmd3 = new SqlCommand(UpdateQuery, con);
   cmd3.CommandType = CommandType.Text;
   con.Close();

}

}

我想使用ASP.NET中的用户配置文件会话更新名称记录。

3hvapo4f

3hvapo4f1#

试着这样做:

using (SqlConnection conn =
    new SqlConnection(ConfigurationManager.ConnectionStrings["ConnString"].ToString()))
{
    string strSQL = "UPDATE register set [name] = @name " +
                    "WHERE email = @email";

    using (SqlCommand cmd = new SqlCommand(strSQL, conn))
    {
        cmd.Parameters.Add("@name", SqlDbType.NVarChar).Value = name.Text;
        cmd.Parameters.Add("@email", SqlDbType.NVarChar).Value = Session["id"].ToString();
        conn.Open();
        cmd.ExecuteNonQuery();
    }
}

上面的代码将为你处理/关闭连接。如果你的代码中有错误,它甚至会关闭连接。
上面的方法也消除了代码中混乱的"'"和连接(易于阅读和维护)。通过使用参数,代码也可以避免注入。
因此:

相关问题