现在有一个dbgrideh,有两个按钮上一页,下一页,怎么能实现翻页呢?请各位大侠请教
解决方案 »
- 获取主板的序列号、网卡物理地址、硬盘参数
- D7新建的ACTIVEFORM当时是没问题,可保存并关闭D7后,在打开就灰了
- 怎样用Delphi来解决数据库(ADO)的主键重复问题?
- dll文件返回类型Pchar,高分求教!
- 如何在delphi中使用OCX控件?
- 关于access很简单问题??
- 本人无工作,在家闲着无事,开发了一个能处理DBGRIDEH多表题头的例程,其自身的导出EXCEL不能处理多表题头!请大家多多指教!
- to Delphi_cs(Hello) [“如何在sql的查询结果中加入序号?”]续
- lwk_hlj,谢谢你的帮助
- CodeRush是做什么用的东东???
- 庆祝一下 这个月没扣工资
- ★9.10教师节★
DECLARE @rows_per_page AS INTEGER
DECLARE @current_page AS INTEGER
DECLARE @total_pages AS INTEGER
DECLARE @start_item AS INTEGER
DECLARE @items_count AS INTEGER
-- 设置每页的行数
SET @rows_per_page = 10
-- 设置要显示的页号(从1开始)
SET @current_page = 1
SELECT @total_pages = COUNT(*) / @rows_per_page + 1,
@items_count= COUNT(*)
FROM ASN_Details;--表名(这是修改的地方)
--计算此页中从第几个开始显示
SET @start_item = @rows_per_page * (@current_page - 1)
select * from
(
select ROW_NUMBER() OVER (order by ID) as item--用什么排序(返回正在显示第几条)
,@items_count AS items_count --一共有多少条
,@current_page AS current_page --当前页
,@total_pages AS total_pages --一共多少页
,* from ASN_Details--表名(这是修改的地方)
) as T
where T.item >= @start_item + 1
AND T.item <= @start_item + @rows_per_page
SQL2005的分页代码,你可以在Delphi中去调用!