必须声明标量变量“@usrid”
Must declare the scalar variable "@usrid"
我想将两个文本值(登录名和登录密码)与 sql 数据库中的现有值进行比较。在执行下面的代码时,我收到一个错误,因为 必须声明标量变量“@usrid”
请有人帮忙解决这个错误。
我是 ASP.Net、C# 的新手。
protected void btnLoginTL_Click(object sender, EventArgs e)
{
string strtl = "Data Source=Server\SQLER2;Initial Catalog=MTD;Persist Security Info=True;User ID=sa;Password='rro@123'";
SqlConnection conn=new SqlConnection(strtl);
conn.Open();
string usrid = txtbxLoginNameTL.Text;
string usrpswd = txtbxLoginPasswordTL.Text;
string squery="Select usridmtld, passwordmtld from mobteldet.mobtellogin where usridmtld=@usrid and passwordmtld=@usrpswd";
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = squery;
cmd.Parameters.AddWithValue("@usridmtld", usrid);
cmd.Parameters.AddWithValue("@passwordmtld", usrpswd);
cmd.Connection = conn;
SqlDataReader sdr = cmd.ExecuteReader();
if (sdr!=null && sdr.HasRows)
{
Response.Redirect("Telelist.aspx");
}
else
{
Response.Write("Enter correct user name & password");
}
}
您正在添加名称为的参数:
cmd.Parameters.AddWithValue("@usridmtld", usrid);
cmd.Parameters.AddWithValue("@passwordmtld", usrpswd);
在您的查询参数有冲突时,更改您的查询:
Select usridmtld, passwordmtld
from mobteldet.mobtellogin
where usridmtld=@usridmtld
and passwordmtld=@passwordmtld // note parameter variables
或更改您的参数:
cmd.Parameters.AddWithValue("@usrid", usrid);
cmd.Parameters.AddWithValue("@usrpswd", usrpswd);
您用列名代替了参数。
改变
cmd.Parameters.AddWithValue("@usridmtld", usrid);
与
cmd.Parameters.AddWithValue("@usrid", usrid);
我想将两个文本值(登录名和登录密码)与 sql 数据库中的现有值进行比较。在执行下面的代码时,我收到一个错误,因为 必须声明标量变量“@usrid”
请有人帮忙解决这个错误。
我是 ASP.Net、C# 的新手。
protected void btnLoginTL_Click(object sender, EventArgs e)
{
string strtl = "Data Source=Server\SQLER2;Initial Catalog=MTD;Persist Security Info=True;User ID=sa;Password='rro@123'";
SqlConnection conn=new SqlConnection(strtl);
conn.Open();
string usrid = txtbxLoginNameTL.Text;
string usrpswd = txtbxLoginPasswordTL.Text;
string squery="Select usridmtld, passwordmtld from mobteldet.mobtellogin where usridmtld=@usrid and passwordmtld=@usrpswd";
SqlCommand cmd = new SqlCommand();
cmd.CommandType = CommandType.Text;
cmd.CommandText = squery;
cmd.Parameters.AddWithValue("@usridmtld", usrid);
cmd.Parameters.AddWithValue("@passwordmtld", usrpswd);
cmd.Connection = conn;
SqlDataReader sdr = cmd.ExecuteReader();
if (sdr!=null && sdr.HasRows)
{
Response.Redirect("Telelist.aspx");
}
else
{
Response.Write("Enter correct user name & password");
}
}
您正在添加名称为的参数:
cmd.Parameters.AddWithValue("@usridmtld", usrid);
cmd.Parameters.AddWithValue("@passwordmtld", usrpswd);
在您的查询参数有冲突时,更改您的查询:
Select usridmtld, passwordmtld
from mobteldet.mobtellogin
where usridmtld=@usridmtld
and passwordmtld=@passwordmtld // note parameter variables
或更改您的参数:
cmd.Parameters.AddWithValue("@usrid", usrid);
cmd.Parameters.AddWithValue("@usrpswd", usrpswd);
您用列名代替了参数。
改变
cmd.Parameters.AddWithValue("@usridmtld", usrid);
与
cmd.Parameters.AddWithValue("@usrid", usrid);