WebForm 分页、组合查询--2017年1月5日

时间:2023-03-08 19:54:55
        sql = "select * from Commodity";
        hs = new Hashtable();
        if (txt_name.Text.Trim() != "")
        {
            sql += " where Name like @Name";
            hs.Add("@Name", "%" + txt_name.Text.Trim() + "%");
        }
   一、通过字符串操作,查看之前是否有Where
        if (txt_jgup.Text.Trim() != "")
        {
            if (sql.Contains("where"))
                sql += " and Price >= @Priceup";
            else
                sql += " where Price >= @Priceup";
            hs.Add("@Priceup", txt_jgup.Text.Trim());
        }

  二、通过标记变量;
        if (txt_numup.Text.Trim() != "")
        {
            )
                sql += " and Stock >= @Stockup";
            else
                sql += " where Stock >= @Stockup";       count++;
            hs.Add("@Stockup", txt_numup.Text.Trim());
        }

  三、拼接不参与搜索的用,1=1等替代     if (txt_name.Text.Trim() != "")
        {
            sql += " where Name like @Name";
            hs.Add("@Name", "%" + txt_name.Text.Trim() + "%");
        }
        else
        {
            sql += " where 1=1";
        }
        if (txt_numup.Text.Trim() != "")
        {
                sql += " and Stock >= @Stockup";
            hs.Add("@Stockup", txt_numup.Text.Trim());
        }else
        {
            sql += " and 2=2";
        }

组合后的分页查询语句需要添加,上面生成的语句,限定Select查询范围