Access 模糊参数 分页查询


    复制代码 代码如下:
    string sql = "Select Count(ID) As rcount From TbProduct WHERE classID IN(" + ids + ") AND PRODUCTNAME LIKE '%'+@ProductName+'%'";
    OleDbParameter[] sps = new OleDbParameter[1];
    sps[0] = AccessDB.CreateParameter("@ProductName", OleDbType.VarChar, productName, 50, ParameterDirection.Input);
    int resultCount = (int)AccessDB.ExecuteScalar(sql, sps);
    recordCount = resultCount;
    if (resultCount >= 0)
    {
    if ((resultCount % pageSize) == 0)
    {
    pageCount = resultCount / pageSize;
    }
    else
    {
    pageCount = (resultCount / pageSize) + 1;
    }
    if (pageIndex == 1)
    {
    sql = "Select Top " + pageSize.ToString() + " * From TbProduct WHERE classID IN(" + ids + ") AND PRODUCTNAME LIKE '%'+@ProductName+'%' Order by ID desc";
    }
    else
    {
    int minRecord = (pageIndex - 1) * pageSize;
    sql = "Select Top " + pageSize.ToString() + " * From TbProduct Where ID Not In(Select ID From (Select Top " + minRecord.ToString() + " ID From tbProduct Where classID IN(" + ids + ") AND PRODUCTNAME LIKE '%'+@ProductName+'%' Order by ID desc )TemA) And classID IN(" + ids + ") AND PRODUCTNAME LIKE '%'+@ProductName+'%' Order by ID desc";
    }
    }
    else
    {
    pageCount = 0;
    }
    return AccessDB.ExecuteDataSet(sql, sps).Tables[0];