weixy() 在VC里用ADO的NEXT方法取10次。zhdleo(叮东) set @sum =@sum +@pagestart;能否解释一下? 另外我写的这段语句是用游标来分页的 不是用来取前10条记录
ADO取一次只能取一条啊,你要取10条只能取10次。
请把ADO使用的具体实例代码贴一下 我找了几本书都没有 谢谢
TRY BELOW:DECLARE records_cursor SCROLL CURSOR FOR SELECT * FROM T1006OPEN records_cursordeclare @pagesize int declare @pagestart intset @pagesize=10 set @pagestart=1 while @pagesize>0 FETCH NEXT FROM records_cursor INTO @pagestart Begin set @pagestart=@pagestart+1 set @pagesize=@pagesize-1 end CLOSE records_cursor DEALLOCATE records_cursor
完全不須那么煩 sql="select top "+PageSize+" * from table where id<all(select top "+cstr(pageSize*(page-1))+" id from table order by id desc) order by id desc"這是我用于分頁的語句id為用于排序的字段名,pagesize是每頁行數﹐page為頁數﹐如果排序為asc時﹐把小于號改成大于號把desc改成asc 但當總行數少于每頁行數時在ACCESS中就不行﹐就只能直接寫select top 12 * from table order by ...了
set @sum =@sum +@pagestart;
在VC里用ADO的NEXT方法取10次。zhdleo(叮东)
set @sum =@sum +@pagestart;能否解释一下?
另外我写的这段语句是用游标来分页的
不是用来取前10条记录
我找了几本书都没有
谢谢
SELECT * FROM T1006OPEN records_cursordeclare @pagesize int
declare @pagestart intset @pagesize=10
set @pagestart=1 while @pagesize>0 FETCH NEXT FROM records_cursor
INTO @pagestart
Begin
set @pagestart=@pagestart+1
set @pagesize=@pagesize-1
end
CLOSE records_cursor
DEALLOCATE records_cursor
sql="select top "+PageSize+" * from table where id<all(select top "+cstr(pageSize*(page-1))+" id from table order by id desc) order by id desc"這是我用于分頁的語句id為用于排序的字段名,pagesize是每頁行數﹐page為頁數﹐如果排序為asc時﹐把小于號改成大于號把desc改成asc
但當總行數少于每頁行數時在ACCESS中就不行﹐就只能直接寫select top 12 * from table order by ...了