SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 
GO
--名称:分页存储过程
--使用示例 EXEC sp_PageIndex '*',' FROM StuSources ',2,10
--注意 
--目前还没有对输入的参数进行严格的验证
--默认为输入都是合法有效的

ALTER  PROC sp_PageIndex
 @sqlSelect varchar(800) --SELECT 后面 FROM 前面 的 字段 不用包含SELECT
,@sqlFrom varchar(800) --FROM 后面 的 字段 包含FROM
,@countPerPage int -- 每页数据行数
,@toPage int --要转到的页码

AS

BEGIN


-- 根据每页数据行数 和 要转到的页码 得到 数据起止点
Declare @start int
Declare @end int

set @end = @countPerPage * @toPage
set @start = @countPerPage * (@toPage - 1) + 1


-- 临时表名称 可随机命名
Declare @tmpTable varchar(10)
SET @tmpTable ='#tmp'

Declare @sqlStr varchar(800)
-- 创建数据源到临时表
SELECT @sqlStr = 'SELECT Identity(int,1,1) AS RowIndex,'
SELECT @sqlStr = @sqlStr + rtrim(@sqlSelect) + ' INTO  '+ @tmpTable 
SELECT @sqlStr = @sqlStr + rtrim(@sqlFrom) 
-- 查询临时表 得到所需要的数据
SELECT @sqlStr = @sqlStr + ' '+'SELECT '+ rtrim(@sqlSelect) +' FROM ' + @tmpTable 
SELECT @sqlStr = @sqlStr + ' WHERE  RowIndex BETWEEN ' + Convert(char,@start) + " AND " + Convert(char,@end)
-- 删除临时表
SELECT @sqlStr = @sqlStr + ' '+'DROP TABLE '+@tmpTable
EXEC (@sqlStr)


END


GO
SET QUOTED_IDENTIFIER OFF 
GO
SET ANSI_NULLS ON 

转载于:https://www.cnblogs.com/weihengblogs/archive/2012/12/04/2801518.html

sql2000下 分页存储过程(一)相关推荐

  1. ASP.NET分页存储过程自定义用户控件

    网上有很多分页存储过程,但是基本上都是提供一个单纯的存储过程,没有具体的怎样去实现.最近做一个项目用户的数数据相当大(一百万以上的数据),如果用.NET自带的分页基本上是跑不动了,不是提示超时就是死在 ...

  2. SQL Server分页存储过程实践(图解)

    下面来对SQL Server分页存储过程进行一下实做.图解成功的各个步骤. 一 找到大数据量的示例表 分页都是针对大记录数的表:反之有大记录数的表,可能就需要分页.例如银行用户表,就会上千万.下面先做 ...

  3. GridView 自写分页 存储过程

    GridView 自写分页 存储过程 前两天写了个分页的存储过程,今天把前台也写了,代码贴出来给大家分享下,有什么建议请赐教啊~ <asp:GridView ID="GridView1 ...

  4. 支持任意排序的分页存储过程

    从网上找了一个分页存储过程,在使用的过程中出现对非主键排序查询时,查不到数据,根据sql2005 的特点修改了其bug,已经添加性能测试(2008-10-27). 存储过程 IF OBJECT_ID( ...

  5. mysql分页存储过程 分页查询语句_分页存储过程(用存储过程实现数据库的分页代码)...

    用存储过程实现数据库的分页代码,加快页面执行速度.具体的大家可以测试下. --******************************************************* --* 分 ...

  6. SQL 分页存储过程(转)

    因为邹建的分页存储过程不能返回记录总数,所以每次分页还又要统计一次,所以自己在里面加了个返回记录数,这下就好用了. @iPageCount int OUTPUT  --定义输出变量,放在@QueryS ...

  7. 微软企业库调用Oracle分页存储过程

    存储过程: CREATE OR REPLACE PACKAGE pkg_tableType IS procedure FY ( TableName varchar2, -- 表名 getFields  ...

  8. ASP.NET调用Oracle分页存储过程并结合ASPnetpager分页控件 实现分页功能

    之前用的是GridView自带的分页功能,那速度啊慢的真实不行  ,决定自定义分页  Oracle库里有5W多条数据 AspnetPager做的还是不错,拿过来用 Oracle 分页存储过程: cre ...

  9. 用于jqGrid获取SQL Server中数据的简单分页存储过程及sp_executesql的一点使用方法...

    之前我第一篇有关jqGrid JSON数据的获取是动态拼接的SQL语句(因为是Access数据库),然后我自己也用SQL Server中的数据作了测试,为了方便写了一个分页的存储过程,过程中也认识了下 ...

  10. (转)大数据量分页存储过程效率测试附代码

    大数据量分页存储过程效率测试附代码 在项目中,我们经常遇到或用到分页,那么在大数据量(百万级以上)下,哪种分页算法效率最优呢?我们不妨用事实说话. 测试环境 硬件:CPU 酷睿双核T5750  内存: ...

最新文章

  1. 为什么加了@Transactional注解,事务没有回滚?
  2. 2021年临颖一高高考成绩查询,河南漯河名列前茅的4所高中,临颖一高强势登榜,你还知道几所?...
  3. 024 Android 自定义样式对话框(AlertDialog)
  4. 地图数据快速渲染------基于传统GIS平台多服务器切片
  5. jmeter 循环取值赋值给form_JMeter系列(三)逻辑控制器详解
  6. 计算机技术在机械设计中的应用,计算机技术在机械设计制造和自动化中的应用(原稿)...
  7. 11个小技巧,玩转Spring!
  8. java run里面定义变量_Java程序员50多道最热门的多线程和并发面试题(答案解析)...
  9. mysql jdbc 驱动名称_【经验分享】常用 JDBC 驱动名字和 URL 列表
  10. php支付回调怎么写_php 微信支付回调校验的两种做法
  11. bootice添加linux_如何使用老毛桃winpe的Bootice工具还原SYSLINUX引导程序?
  12. 【web前端HTML5+CSS3】01HTML--基础知识
  13. 一个简单的条码/二维码扫描App
  14. 北京航空航天大学、浙江大学等27支海内外高校队伍晋级ASC超算大赛总决赛
  15. SSM整合开发实战-poi导入导出excel-前言
  16. r52500u学计算机,AMD锐龙R5 2500U性能评测 性能提升幅度让Intel八代酷睿汗颜
  17. Excel怎么实现图片查找功能?
  18. pandas中inplace_对python pandas中 inplace 参数的理解
  19. 【FTP】一、什么是FTP?
  20. “鸿蒙之父”王成录重申:鸿蒙系统不是安卓套壳;苹果多款产品电池修理费将涨价;Debian移除Python 2|极客头条

热门文章

  1. 洛谷 P1881 绳子对折
  2. 北京供销大数据集团BGP网络商用 经实测网络质量优异
  3. (数字IC)低功耗设计入门(五)——RTL级低功耗设计(续)
  4. 感觉非常经典的一片博文(关于缓存)
  5. MessageDialog MessageDialogPage
  6. W/ActivityManager( 1419): Activity is launching as a new task, so cancelling activity result.
  7. 5.支付平台架构:业务、规划、设计与实现 --- 账务系统
  8. 7.微服务:从设计到部署 --- 重构单体应用为微服务
  9. 1.Kubernetes 简介
  10. 2.kafka 安装