易截截图软件、单文件、免安装、纯绿色、仅160KB

sqlserver分页存储过程的用法

create proc P_QuerySplit
 @sqlscript varchar(20),         --表名/SQL语句
 @pageSize int,                  --每页记录数
 @pageIndex int,                 --当前页
 @totalCount int output,         --总记录数
 @totalPage int output        --总页数
as
  declare @v_sqlscript varchar(20)
  declare @v_PageSize int
  declare @v_PageIndex int
  declare @v_SQL_Count int
  declare @v_SQL varchar(4000)
  declare @v_StartIndex int
  declare @v_EndIndex int
 set @v_PageSize=@pageSize
 --每页记录数
if @v_PageSize=0
 set @v_PageSize=1
print @v_pageSize
--查询总记录数
select @v_SQL_Count=count(1) from stuInfo
set @totalCount=@v_SQL_Count
print @totalCount
--总页数
set @totalPage=ceiling(@totalCount/@v_PageSize)
--当前页
if(@pageIndex=1 or @pageIndex<1)
begin
 set @pageIndex=1
 set @v_PageIndex=@pageIndex
 set @v_StartIndex=0
 set @v_EndIndex=ceiling(@v_pageIndex*@v_pageSize)
print    @pageIndex
 
end
if @pageIndex>1
begin
 set @v_PageIndex=@pageIndex
 set @v_StartIndex=ceiling((@v_PageIndex-1)*@v_PageSize)
 set @v_EndIndex=ceiling(@v_pageIndex*@v_pageSize)
print  @pageIndex
 
end
 
 
set @v_sqlscript=@sqlscript
--当前页的记录
--  set @v_SQL='select top'+str(@v_PageSize)+' * from '+ @v_sqlscript+
--' where (id>(select max(id) from (select top '+str(@v_startIndex)+' id
--from '+ @v_sqlscript +' order by id) a)) order by id'
--exec (@v_SQL)
 set @v_SQL='select * from (select row_number() over(order by id desc) as rownum,
* from '+@v_sqlscript+') as t where t.rownum>'+str(@v_StartIndex)+' a


相关文档:

ADO中sqlserver存储过程使用

ADO中sqlserver存储过程使用 收藏
从ADO中得到多个记录集以及怎么样在ADO中使用sql server 的存储过程
DataType Value Length Data Length
BIGINT 996857543543543 15 8
INT 543543 6 4
SMALLINT 32765 5 2
TINYINT 254 3 1
BIT True 1 1
DECIMAL 765.5432321 11 9
NUMERIC 432.6544 8 5
MONEY 543.1234 ......

利用SQLSERVER的事件探测器掌握用友系统的表结构

SQLSERVER的事件探测器是一个很强大很直观的工具,当我们在ERP系统里面做一定操作的时候,都会在数据库里面形成查询或者增删改的T-SQL语句。通过事件探测器就可以知道ERP里面的单据在数据库的哪个表里面,甚至哪个字段里面。还可以根据探测到的SQL语句分析ERP系统的表结构,表之间的关联字段是哪个。
大家初打开事件探测器 ......

SQLServer 2005 集群的配置 实现双机热备

   MS Sqlserver 2005 集群是指数据库高可用性集群,能实现通常所说的“双机热备”,即当一台服务器停掉数据库服务可以自动转移到另一台服务器。
       环境要求:
       1、windows 2003 server企业版
    &nb ......

SQLServer数据库维度表和事实表概述

  事实表
  每个数据仓库都包含一个或者多个事实数据表。事实数据表可能包含业务销售数据,如现金登记事务
  所产生的数据,事实数据表通常包含大量的行。事实数据表的主要特点是包含数字数据(事实),并且这些数字信息可以汇总,以提供有关单位作为历史的数据,每个事实数据表包含一个由多个部分组成的索引,该索引 ......

SQLSERVER数据库开发的二十一条军规

SQL SERVER数据库开发的二十一条军规
如果你正在负责一基于SQL SERVER 的项目,或者刚刚接触SQL SERVER,你可能将面临一些数据库性能的问题。这篇文章会提供一些有用的经验-----关于如何形成好的设计。
一、了解你用的工具
不要轻视这一点,这是本文最关键的一条。也许你也看到有很多的SQL SERVER程序员没有掌握全部的T- ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号