日期:2014-05-18  浏览次数:20448 次

为什么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吧?


那是用户名或密码错了

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