针对Ext js的分页存储过程-适用于sqlserver2008

本文涉及的产品
云数据库 RDS SQL Server,基础系列 2核4GB
RDS SQL Server Serverless,2-4RCU 50GB 3个月
推荐场景:
简介: USE [UTMP_RC_121213] GO /****** Object: StoredProcedure [dbo].[PageProc] Script Date: 01/05/2013 08:45:56 ******/ SET ANSI_NULLS ON GO SET ...
USE [UTMP_RC_121213]
GO
/****** Object:  StoredProcedure [dbo].[PageProc]    Script Date: 01/05/2013 08:45:56 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
-- =============================================
-- Author:        刘晓伦
-- Create date: 12-10-13
-- Description:    分页存储过程,
-- 如果使用ExcuteReader()方法执行此存储过程
-- 必须先reader.close()才能得到输出参数
-- =============================================
ALTER PROCEDURE [dbo].[PageProc]
( 
@sqlStr     nvarchar(max),    ----SQL语句 
@startRow   int,        ----开始的行
@pageSize   int,        ----一页多少行
@orderBy    nvarchar(max),    ----排序条件 
@rowCount    int = 1 output  ----一共多少行
) AS
BEGIN
SET NOCOUNT ON;
Declare @sql nvarchar(max)
Declare @csql nvarchar(max)
--todo:此处为了方便使用,没有考虑性能,意图是得到一共有多少行
select @csql = 'select @Counts = count(*) from ('+@sqlStr+') as t'
select @sql = 'select * from (select ROW_NUMBER() OVER (#order_by_replace_holder#)  AS RINDEX ,* FROM ( '+@sqlStr+' ) as t ) as b where '+ CAST(@startRow+1 as varchar)+' <= RINDEX and RINDEX <= '+CAST(@startRow+@pageSize as varchar)
select @sql = REPLACE(@sql,'#order_by_replace_holder#',@orderBy)
--把一共有多少行记录写入输出参数
exec sp_executesql @csql,N'@Counts int out ',@rowCount out 
--获得检索结果
exec sp_executesql @sql
    
END

在2013-1-5修改过

相关实践学习
使用SQL语句管理索引
本次实验主要介绍如何在RDS-SQLServer数据库中,使用SQL语句管理索引。
SQL Server on Linux入门教程
SQL Server数据库一直只提供Windows下的版本。2016年微软宣布推出可运行在Linux系统下的SQL Server数据库,该版本目前还是早期预览版本。本课程主要介绍SQLServer On Linux的基本知识。 相关的阿里云产品:云数据库RDS&nbsp;SQL Server版 RDS SQL Server不仅拥有高可用架构和任意时间点的数据恢复功能,强力支撑各种企业应用,同时也包含了微软的License费用,减少额外支出。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/sqlserver
目录
相关文章
|
7月前
|
存储 SQL Go
sqlserver存储过程
sqlserver存储过程
|
2月前
|
存储 SQL 数据库
SQL Server存储过程的优缺点
【10月更文挑战第18天】SQL Server 存储过程具有提高性能、增强安全性、代码复用和易于维护等优点。它可以减少编译时间和网络传输开销,通过权限控制和参数验证提升安全性,支持代码共享和复用,并且便于维护和版本管理。然而,存储过程也存在可移植性差、开发和调试复杂、版本管理问题、性能调优困难和依赖数据库服务器等缺点。使用时需根据具体需求权衡利弊。
|
2月前
|
JavaScript 前端开发
JavaScript分页功能
JavaScript分页功能
|
2月前
|
存储 SQL 缓存
SQL Server存储过程的优缺点
【10月更文挑战第22天】存储过程具有代码复用性高、性能优化、增强数据安全性、提高可维护性和减少网络流量等优点,但也存在调试困难、移植性差、增加数据库服务器负载和版本控制复杂等缺点。
|
2月前
|
存储 SQL 数据库
Sql Server 存储过程怎么找 存储过程内容
Sql Server 存储过程怎么找 存储过程内容
92 1
|
2月前
|
存储 SQL 数据库
SQL Server存储过程的优缺点
【10月更文挑战第17天】SQL Server 存储过程是预编译的 SQL 语句集,存于数据库中,可重复调用。它能提高性能、增强安全性和可维护性,但也有可移植性差、开发调试复杂及可能影响数据库性能等缺点。使用时需权衡利弊。
|
2月前
|
存储 SQL 数据库
SQL Server 临时存储过程及示例
SQL Server 临时存储过程及示例
59 3
|
4月前
|
存储 SQL 数据库
如何使用 SQL Server 创建存储过程?
【8月更文挑战第31天】
212 0
|
4月前
|
JavaScript
js分页+搜索
js分页+搜索
46 0
|
4月前
|
JavaScript
js之简单分页
js之简单分页
51 0