做个搜索器,有几个条件供用户选择,但用户也有可能不是所有的选项都选,可能有些条件是空的,这样的SQL语句该怎么写啊?

解决方案 »

  1.   

    动态并sql了
    就和拼字符串差不多
      

  2.   

    用Like textbox.text.trim + "%",如果是空的,就是"%",等于没有这个条件喽。
      

  3.   

    string sql="select * from tb where 1=1 ";
    if(txt1.Text.Trim().lenth>0)
    {
       sql+=" and title like '%+txt1.Text.Trim()+%' ";
    }
    if(txt2.Text.Trim().lenth>0)
    {
       sql+=" and content like '%+txt2.Text.Trim()+%' ";
    }
      

  4.   

    glamorsunny(魅力阳光) ( ) 信誉:100    
     你顶的是他吗
      

  5.   

    简单的解决方法,这些项应该都有子父关系吧,不然不可能乱搜的
    当子父关系的时候,用(xx=xx and xx=xx)不是子父的用or来连接,括号+or+and是最简单的解决方法,哈哈
      

  6.   

    用LIKESELECT * FROM TBL WHERE field1 like   '%'+var1+'%' and field2 like   '%'+var2+'%'
      

  7.   

    string sql="select * from tb where 1=1 ";
    if(txt1.Text.Trim().lenth>0)
    {
       sql+=" and title like '%+txt1.Text.Trim()+%' ";
    }
    if(txt2.Text.Trim().lenth>0)
    {
       sql+=" and content like '%+txt2.Text.Trim()+%' ";}就魔力阳光这样写。
      

  8.   

    Dim sqlstr As String = "select regtime from userlogin where username='" & x & "'"
            Dim rs As Data.SqlClient.SqlDataReader = obj.execReaderSql(sqlstr)
           rs.read
      

  9.   

    glamorsunny(魅力阳光) 的为正解!