Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/277.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用ASP.Net检查数据库中是否存在用户名_C#_Asp.net_Sql Server_Select - Fatal编程技术网

C# 使用ASP.Net检查数据库中是否存在用户名

C# 使用ASP.Net检查数据库中是否存在用户名,c#,asp.net,sql-server,select,C#,Asp.net,Sql Server,Select,我想检查数据库中是否已经有用户名。它与我的更新声明一起提供。我有此代码,不知道将select语句放在何处: protected void btn_update_Click(object sender, EventArgs e) { SqlConnection con = new SqlConnection(conn); con.Open(); str = "update UserData set Password=@Password where UserName='"

我想检查数据库中是否已经有用户名。它与我的更新声明一起提供。我有此代码,不知道将select语句放在何处:

protected void btn_update_Click(object sender, EventArgs e)
{
    SqlConnection con = new SqlConnection(conn);
    con.Open();

    str = "update UserData set Password=@Password where UserName='" + txtUser.Text + "'";

    com = new SqlCommand(str, con);

    com.Parameters.Add(new SqlParameter("@Password", SqlDbType.VarChar));
    com.Parameters["@Password"].Value = BusinessLayer.ShoppingCart.CreateSHAHash(txtPW.Text);

    com.ExecuteNonQuery();

    con.Close();
    Label1.Visible = true;
    Label1.Text = "Password changed Successfully!" ;

    con.Close();
}
我想要像这样的东西

"Select Username from Userdata Where Username = txtUser.Text"

您不需要在此处选择
ExecuteNonQuery()
返回受影响的行数,这意味着当它返回0时,数据库中没有具有给定名称的用户。如果一切顺利,它将返回1

您的代码易受SQL注入和资源泄漏的影响。这里有一个更好的版本:

protected void btn_update_Click(object sender, EventArgs e)
{
    using(var con = new SqlConnection(conn))
    {        
        con.Open();
        var commandTest = "update UserData set Password=@Password where UserName=@Username";

        using(var com = new SqlCommand(commandTest, con))
        {
            com.Parameters.AddWithValue("@Username", txtUser.Text);
            com.Parameters.AddWithValue("@Password", BusinessLayer.ShoppingCart.CreateSHAHash(txtPW.Text));

            if(com.ExecuteNonQuery() == 1)
            {
                Label1.Visible = true;
                Label1.Text = "Password changed Successfully!" ;            
            }
        }
    }
}

您的问题不清楚,但您需要选择的目的是什么command@NazirUllah选择用户名是否在数据库中,如果是,则继续。如果否,error给我一个错误sir CommandText属性尚未初始化影响行为if(com.ExecuteNonQuery()==1)