SqlDataSource1.SelectCommand = "select * from tickets where Trains like '%'+@train+'%' or Outset like '%'+@Outset+'%'";
SqlDataSource1.SelectParameters.Add("train",  Server.UrlDecode(Request.QueryString["train"]));
SqlDataSource1.SelectParameters.Add("Outset",  Server.UrlDecode(Request.QueryString["Outset"]));@train,@Outset是我从其他页面传递来的,但是在那个页面上只能同时都输入2个值才能查出数据,就是说这个SQL语句中的or失效了。。不知道怎么解决。

解决方案 »

  1.   

    把SQL输出或用数据库跟踪看看SQL是什么,拷贝到查询出口执行调试
      

  2.   

    不是很明白你想表达的意思。你可以去判断request有值没,都有的话执行select语句嘛!
      

  3.   

    这样的话 前台拼SQL应该叫好些如果参数不为空or Outset like '%'+@Outset+'%'"; 把这拼接里如果后面的参数为空or Outset like '%'+@Outset+'%'";省略。。然后在查询。