当前位置: 首页 > 图文教程 > 数据库 > Access > Access 模糊参数 分页查询

Access
中文Access2000速成教程--1.2 使用“数据库向导”创建表
建立自由的会计日期的报表--1.2.创建让用户选择日期窗体
建立自由的会计日期的报表--1.1.认识几个有关时间的函数
建立自由的会计日期的报表
使用准则进行条件查询--1.5.常用的准则表达式
使用准则进行条件查询--1.4.从窗体中选择查询的条件
中文Access2000速成教程--1.1 使用“向导”设计数据库
获取ACCESS2000数据库中所有表的名称
中文Access2000速成教程--1.3 在“设计”视图中设计表
中文Access2000速成教程--1.4 使用“表向导”建立新表
中文Access2000速成教程--1.8 定义表之间的关系
中文Access2000速成教程--1.5 使用已有的数据自动建新表
中文Access2000速成教程--1.6 定义“主键”
中文Access2000速成教程--1.7 创建索引
解决Access中分组报表的问题
用 INNER JOIN语法联接多个表建记录集
ACCESS学习日记
Access保留字&变量名列表
如何 在Access中选择指定日期前的记录?
ACCESS中关于SQL语句的转义字符

Access 模糊参数 分页查询


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-13   浏览: 108 ::
收藏到网摘: n/a

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];