时间:2021-07-01 10:21:17 帮助过:18人阅读
access数据库是不支持ROW_NUMBER()的,但是我用动软 生成 器 生成 出来的数据操作层的 代码 有这样的一个方法 /// summary /// 分页获取数据列表 /// /summary public DataSet GetListByPage(string strWhere, string orderby, int startIndex, int endIndex
access数据库是不支持ROW_NUMBER()的,但是我用动软生成器生成出来的数据操作层的代码有这样的一个方法
///
/// 分页获取数据列表
///
public DataSet GetListByPage(string strWhere, string orderby, int startIndex, int endIndex)
{
StringBuilder strSql=new StringBuilder();
strSql.Append("SELECT * FROM ( ");
strSql.Append(" SELECT ROW_NUMBER() OVER (");
if (!string.IsNullOrEmpty(orderby.Trim()))
{
strSql.Append("order by T." + orderby );
}
else
{
strSql.Append("order by T.id desc");
}
strSql.Append(")AS Row, T.* from article_xh T ");
if (!string.IsNullOrEmpty(strWhere.Trim()))
{
strSql.Append(" WHERE " + strWhere);
}
strSql.Append(" ) TT");
strSql.AppendFormat(" WHERE TT.Row between {0} and {1}", startIndex, endIndex);
return DbHelperOleDb.Query(strSql.ToString());
}
,我在access的sql视图里测试老是错误,提示,语法丢失,操作符错误。
怎么写才对呢?