当前位置: 代码迷 >> ASP.NET >> 为什么sql的取值为null?解决办法
  详细解决方案

为什么sql的取值为null?解决办法

热度:5748   发布时间:2013-02-25 00:00:00.0
为什么sql的取值为null?
string sql;

  if (RadioButtonList1.SelectedItem.Text == "管理员")
  {

  sql = "select * from Users where UserName='" + name.Text.ToString().Trim() + "' and pwd='" + password.Text.ToString().Trim() + "'";
  }
  else
  {
  sql = "select * from users where username='" + name.Text.ToString().Trim() + "' and pwd='" + password.Text.ToString().Trim() + "' and ct='用户'";
  }

------解决方案--------------------------------------------------------
不可能是null吧。至少是"select * from Users where UserName= 等等吧。
------解决方案--------------------------------------------------------
你调试的断点放在哪里,应该不是放在你现在贴的代码里面吧。可能是你在某个地方把sql设置为null了也不一定啊
------解决方案--------------------------------------------------------
你就拼了个sql语句,又没执行
------解决方案--------------------------------------------------------
sql怎么会为null,你这里的sql只是一条字符串,并没有去执行查询操作
------解决方案--------------------------------------------------------
C# code
string sql="";  if (RadioButtonList1.SelectedItem.Text == "管理员")  {  sql = "select * from [Users] where [UserName]='" + name.Text.ToString().Trim() + "' and [pwd]='" + password.Text.ToString().Trim() + "'";  }  else  {  sql = "select * from [users] where [username]='" + name.Text.ToString().Trim() + "' and [pwd]='" + password.Text.ToString().Trim() + "' and ct='用户'";  }
------解决方案--------------------------------------------------------
是执行的结果为null吧?


那是用户名或密码错了

还有啊,你这代码有问题,首先是没有防注入,第二是密码没有区分大小写(很多情况下的数据库设置都是不区分大小写的)
  相关解决方案