分页存储过程的使用

9/1/2015来源:SQL技巧人气:1827

分页存储过程的使用

一、存储过程

存储过程就像数据库中运行的方法(函数)

优点:速度快,在数据库中保存的存储过程语句都是编译过的

允许模块化程序设计

提高系统的安全性,防止SQL注入

减少网络流量,只传输存储过程的名称

二、存储过程分类

1、系统存储过程

由系统定义,存放在master数据库中

名称以"sp_"开头或"xp_"开头

2、自定义存储过程

由用户在自己的数据库中创建的存储过程usp

三、创建存储过程

Create PRoc[edure] 存储过程名

@参数1 数据类型=默认值 output,

@参数n 数据类型=默认值 output

as

SQL语句

四、存储过程的使用

 1 create procedure usp_FenYe 2 @pageIndex int, 3 @pageCount int=10, 4 @pageTotalCount int output 5 as 6 begin 7   --计算出总页数 8   declare @totalData int; 9   set @totalData=(select count(*) from T)10   set @pageTotalCount=Ceiling(@totalData*1.0/@pageCount);11   --得到数据12   select * from13   (select *,num=row_number() over(order by id) from T) as t14    where t.num between 15     @pageCount * (@pageInde-1)+1 and @pageCount* @pageIndex;16 end17 go