| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1771 人关注过本帖
标题:分页显示数据,10条记录一个单位,怎么查询
只看楼主 加入收藏
pzf007
Rank: 1
等 级:新手上路
帖 子:1
专家分:0
注 册:2006-7-30
收藏
 问题点数:0 回复次数:10 
分页显示数据,10条记录一个单位,怎么查询
0-10  10-20。。。。。。。。。。。。。
搜索更多相关主题的帖子: 数据 单位 记录 查询 
2006-07-30 13:11
林升
Rank: 1
等 级:新手上路
威 望:1
帖 子:46
专家分:0
注 册:2006-6-12
收藏
得分:0 

这个问题还没看见过,不知道怎么搞定,顶上去看有人知道没


我是菜鸟,我怕谁!!!!!!!!!!!!!!!
2006-07-30 17:42
LouisXIV
Rank: 6Rank: 6
等 级:贵宾
威 望:25
帖 子:789
专家分:0
注 册:2006-1-5
收藏
得分:0 

1.
CREATE PROCEDURE sp_mypager(@sqlstr nvarchar(4000),@Pagecount int, @pagesize int )

-- @slqstr :查询字符串
-- @pagecount 第N 页
--@ pggesize 每页行数


as
set nocount on
declare @P1 int,--P1是游标的id
@rowcount int

exec sp_cursoropen @P1 output,@sqlstr,@scrollopt=1,@ccopt=1,@rowcount=@rowcount output
select @rowcount as 总行数,ceiling(1.0*@rowcount/@pagesize) as 页数,@pagecount as 当前页
set @pagecount=(@pagecount-1)*@pagesize+1
exec sp_cursorfetch @P1,16,@pagecount,@pagesize
exec sp_cursorclose @P1

GO


2.
if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[sp_PageView]') and OBJECTPROPERTY(id, N'IsProcedure') = 1)
drop procedure [dbo].[sp_PageView]
GO

/*--利用SQL未公开的存储过程实现分页

方法简单且效率高,已知的问题就是要多返回一个空的记录集

解决的方法是在前台调用时,用 set recordset=recordset.nextrecordset
的方法跳过第一个记录集

此方法由J9988提供,我只是将它改成了方便调用的存储过程

--邹建 2004.05(引用请保留此信息)--*/

/*--调用示例

declare @PageCount int
exec sp_PageView
@sql='select * from sysobjects',
@PageCurrent=2,
@PageCount=@PageCount out
SELECT @PageCount
--*/
CREATE PROC sp_PageView
@sql ntext, --要执行的sql语句
@PageCurrent int=1, --要显示的页码
@PageSize int=10, --每页的大小
@PageCount int OUTPUT --总页数
AS
SET NOCOUNT ON
DECLARE @p1 int
--初始化分页游标
EXEC sp_cursoropen
@cursor=@p1 OUTPUT,
@stmt=@sql,
@scrollopt=1,
@ccopt=1,
@rowcount=@PageCount OUTPUT

--计算总页数
IF ISNULL(@PageSize,0)<1
SET @PageSize=10
SET @PageCount=(@PageCount+@PageSize-1)/@PageSize
IF ISNULL(@PageCurrent,0)<1 OR ISNULL(@PageCurrent,0)>@PageCount
SET @PageCurrent=1
ELSE
SET @PageCurrent=(@PageCurrent-1)*@PageSize+1

--显示指定页的数据
EXEC sp_cursorfetch @p1,16,@PageCurrent,@PageSize

--关闭分页游标
EXEC sp_cursorclose @p1
GO



2006-07-30 20:55
潇洒老乌龟
Rank: 5Rank: 5
等 级:贵宾
威 望:18
帖 子:407
专家分:0
注 册:2005-12-13
收藏
得分:0 
强人.

乌龟学堂http://www. 承接各种软件开发、系统集成、网络搭建。 QQ:124030710
2006-07-30 23:00
chaoloveting
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2006-8-3
收藏
得分:0 
噢,看不懂,但顶一下.
2006-08-05 00:51
nxcgh2006
Rank: 1
等 级:新手上路
帖 子:31
专家分:0
注 册:2006-6-15
收藏
得分:0 
版主的確是強者!!!
在下佩服!
努力學習中。。。。

望能幫助後者。。。。。

這個問題要先建立一下存儲過程才可解決哦
2006-09-22 11:16
卜酷塔
Rank: 7Rank: 7Rank: 7
来 自:魅力青岛
等 级:禁止访问
威 望:39
帖 子:2569
专家分:0
注 册:2004-6-12
收藏
得分:0 
如果是用sql来完成的化可能效率会低一点,如果是借助第三方变成语言的化,更能体现速度!

觉得为时已晚的时候,恰恰是最早的时候。

2006-09-22 11:18
小水滴
Rank: 1
等 级:新手上路
威 望:2
帖 子:227
专家分:0
注 册:2006-8-22
收藏
得分:0 
把分页的操作放在前台处理是不是更方便

2006-09-22 12:28
棉花糖ONE
Rank: 7Rank: 7Rank: 7
等 级:贵宾
威 望:32
帖 子:2987
专家分:0
注 册:2006-7-13
收藏
得分:0 
请3楼的斑竹稍微给代码做个解释吧,初学者不太理解

26403021 sql群 博客 blog./user15/81152/index.shtml
2006-10-21 10:03
cjd0659
Rank: 1
等 级:新手上路
帖 子:3
专家分:0
注 册:2006-10-21
收藏
得分:0 
嗯,牛人出现了,佩服佩服
2006-10-21 17:43
快速回复:分页显示数据,10条记录一个单位,怎么查询
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.012315 second(s), 7 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved