做个分页时
Sqls:='select top '+IntToStr(pagesize)+' '+SelectStr+' from '+FromStr+'where '+FdName+' not in(select top '+IntToStr(pagesize*PageCurrent)+' '+FdName+' from '+FromStr+'where '+WhereStr+OrderByStr+')'+'and '+WhereStr+OrderByStr;
TSQLDataSet(DataSetBroker1.DataSet).Close;
TSQLDataSet(DataSetBroker1.DataSet).SQL.Text :=Sqls;
TSQLDataSet(DataSetBroker1.DataSet).Open;
当select top 100 * from BZZLXX where ZLBS not in(select top 72200 ZLBS from BZZLXX where 1=1 order by djh )and 1=1 order by djh
这句在查询分析器与数据集查出来的是93条记录(正确)
可是在DataGRID上表现的这么会是100条记录呢
1、“做个分页时”怎么理解这句话,是数据集定义了分步取数据吗?如果是,取消分步取数据,正常吗?如果不是,那是啥意思呢?
2、 select top 100 * from BZZLXX where ZLBS 这句话取出来是多少条呢?
3、select top 72200 ZLBS from BZZLXX 这句话取出来又是多少条呢?