1. USE [database]
  2. GO
  3.  
  4. SET ANSI_NULLS ON
  5. GO
  6. SET QUOTED_IDENTIFIER ON
  7. GO
  8.  
  9. ALTER PROCEDURE [dbo].[ProcedureName]
  10. (
  11. @I_IndexID varchar(16),
  12.  
  13. @I_PageIndex INT,
  14. @I_PageSize INT,
  15.  
  16. @O_TotalCount INT output,
  17. @O_RTCD int output,
  18. @O_APPMSG varchar(512) output,
  19. @O_SYSMSG varchar(512) output
  20. )
  21. AS
  22.  
  23. DECLARE @ErrorMessage nvarchar(4000);
  24. DECLARE @ErrorNumber int;
  25. DECLARE @ErrorSeverity int;
  26. DECLARE @ErrorState int;
  27. DECLARE @ErrorLine int;
  28. DECLARE @ErrorProcedure int;
  29.  
  30. SET @O_RTCD=0;
  31. SET @O_APPMSG='';
  32. SET @O_SYSMSG='';
  33.  
  34. BEGIN TRY
  35. select @O_TotalCount = count(*) from [datatable]
  36.  
  37. select *,ROW_NUMBER() OVER (ORDER BY IndexID DESC) as RowID from
  38. (select * from [datatable] where IndexID = @I_IndexID) as t1
  39. where RowID BETWEEN (@I_PageIndex - 1) * @I_PageSize + 1 AND @I_PageIndex * @I_PageSize;
  40.  
  41. END TRY
  42. BEGIN CATCH
  43. SELECT
  44. @ErrorNumber = ERROR_NUMBER(),
  45. @ErrorSeverity = ERROR_SEVERITY(),
  46. @ErrorState = ERROR_STATE(),
  47. @ErrorLine = ERROR_LINE();
  48.  
  49. SELECT @ErrorMessage = N'Error %d, State %d, Procedure %s, Line %d, ' + 'Message: '+ ERROR_MESSAGE();
  50.  
  51. SELECT @O_RTCD= -1,
  52. @O_APPMSG = 'Error '+CAST(@ErrorNumber as varchar) + ', Level '+ CAST(@ErrorSeverity as varchar) + ', State ' + CAST(@ErrorState as varchar) + ', Procedure'+ @ErrorProcedure + ', Line: ' +CAST(@ErrorLine as varchar),
  53. @O_SYSMSG = ERROR_MESSAGE();
  54. PAISERROR(@ErrorMessage,@ErrorSeverty,1,@ErrorNumber,@ErrorSeverity,@ErrorState,@ErrorProcedure,@ErrorLine);
  55.  
  56. END CATCH;

  

SQL Server分页存储过程笔记的更多相关文章

  1. C#调用SQL Server分页存储过程

    以SQL Server2012提供的offset ..rows fetch next ..rows only为例 e.g. 表名:Tab1 ------------------------------ ...

  2. 分页系列之一:SQL Server 分页存储过程

    以下为最基本的代码结构,SQL Server 2012 开始支持 CREATE PROCEDURE procXXX @Page int, --当前页码,从1开始 @PageSize int --每页记 ...

  3. sql server 分页存储过程

    ----------------------分页存储过程------------------------------------------------------------------------ ...

  4. [转]Sql Server 分页存储过程

    本文转自: 版权声明:作者:jiankunking 出处:http://blog.csdn.net/jiankunking  本文版权归作者和CSDN共有,欢迎转载,但未经作者同意必须保留此段声明,且 ...

  5. sql server分页存储过程

    因项目需要,一次性查询出来的数据过大,内存hold不住,所以特意写成分页查询,减小占用内存. 存储过程如下: USE [XXX] GO SET ANSI_NULLS ON GO SET QUOTED_ ...

  6. SQL Server分页存储过程通用存储过程

    CREATE proc [dbo].[p_paging]@tableName varchar(8000),          --表名.视图名@indexCol varchar(50) = 'id', ...

  7. C#面试题(转载) SQL Server 数据库基础笔记分享(下) SQL Server 数据库基础笔记分享(上) Asp.Net MVC4中的全局过滤器 C#语法——泛型的多种应用

    C#面试题(转载) 原文地址:100道C#面试题(.net开发人员必备)  https://blog.csdn.net/u013519551/article/details/51220841 1. . ...

  8. SQL Server 2012 数据库笔记

    慕课网 首页 实战 路径 猿问 手记     Python 手记 \ SQL Server 2012 数据库笔记 SQL Server 2012 数据库笔记 2016-10-25 16:29:33 1 ...

  9. 《Troubleshooting SQL Server》读书笔记-CPU使用率过高(下)

    <Troubleshooting SQL Server>读书笔记-CPU使用率过高(下) 第三章 High CPU Utilization. CPU使用率过高的常见原因 查询优化器会尽量从 ...

随机推荐

  1. 【Samza系列】实时计算Samza中文教程(四)—API概述

    上一篇和大家一起宏观上学习了Samza平台的架构,重点讲了一下数据缓冲层和资源管理层.剩下的一块非常重要的SamzaAPI层本节作为重点为大家展开介绍.     当你使用Samza来实现一个数据流处理 ...

  2. 【Bash百宝箱】Linux shell学习

    shell特点-- Linux有多种shell能够使用,默认的为bash,bash有以下几个主要特点. 1.命令记忆能力 在命令行中按上下键能够找到一个前/后输入的命令.这些命令记录在-/.bash_ ...

  3. https://github.com/zhangxianyi/Source-Insight-Plugin

    https://github.com/zhangxianyi/Source-Insight-Plugin

  4. HashTable 解决碰撞(冲突)的方法 —— 分离链接法(separate chaining)

    1. ListNode 及 HashTable 的类型声明 声明 typedef int ElementType; typedef unsigned int Index; struct ListNod ...

  5. js中的style与jQuery中的css

    使用jQuery选择器时,可以直接使用css函数(注意不能使用$("p")[1].css()) $("p").css("background-colo ...

  6. 判断navigation中父控制器类型

    for (UIViewController *controller in self.navigationController.viewControllers) { if ([controller is ...

  7. 瀑布流的一些CSS实现方式

    一个选择是用CSS3的多列columns,可以参考这篇文章.但这篇文章给的例子并不怎么好理解,我做了一些更改,在每个元素上加了序号.可以看到,多列布局是在每一列上依次排列元素的,第一列排完才开始排第二 ...

  8. 【a803】营救

    Time Limit: 10 second Memory Limit: 2 MB 问题描述 铁达尼号遇险了!它发出了求救信号.距离最近的哥伦比亚号收到了讯息,时间就是生命,必须尽快赶到那里.通过侦测, ...

  9. cordova-plugin-file-transfer 监听到下载成功,找不到文件 - 简书

    原文:cordova-plugin-file-transfer 监听到下载成功,找不到文件 - 简书 下载成功后找不到下载文件 function download(fileEntry, uri) { ...

  10. 多域名绑定同一IP地址,Node.js来实现

    本来打算用Nginx来实现,看了一会Nginx的配置,感觉又要费时间学习,就抱着试试看的心在网上搜,是否可以用Node.js来实现. 没想到,竟然搜到了.想试一下,但国内域名备案时间长达一个月,我肯定 ...