sql2005 存储过程分页示例代码
--分页存储过程示例
Alter PROCEDURE [dbo].[JH_PageDemo]
@pageSize int = 9000000000,
@pageIndex int = 1 ,
@orderBy Nvarchar(200) = '' -- 不加order By
AS
SET NOCOUNT ON
--声明变量
DECLARE @select VARCHAR(3048);
DECLARE @from VARCHAR(512);
DECLARE @RowNumber VARCHAR(256);
DECLARE @condition nVARCHAR(3990);
DECLARE @groupBy varchar(50);
DECLARE @sql VARCHAR(3998);
DECLARE @RowStartIndex INT;
DECLARE @RowEndIndex INT;
BEGIN
SET NOCOUNT on
IF @orderBy <> ''
Set @orderBy = ' ORDER BY ' + @orderBy;
else
Set @orderBy = ' ORDER BY Userid ' ;
SET @select = ' select userid,username ,';
--设置排序语句
SET @RowNumber ='ROW_NUMBER() OVER (' + @orderBy + ' ) as RowNumber ';
SET @select = @select + @RowNumber;
SET @from = ' FROM users ';
--设置条件语句@GULevel
SET @condition = ' WHERE 1=1 ';
SET @condition = @condition + 'AND userid > 0';
--分组语句
SET @groupBy = ' GROUP BY USerID '
SET @RowStartIndex = ( @pageIndex -1) * @pageSize + 1
SET @RowEndIndex = @pageIndex * @pageSize ;
--查询结果
SET @sql = 'SET NOCOUNT ON;
WITH ResultTable AS ( ' + @select + @from + @condition +')
SELECT * FROM ResultTable WHERE RowNumber between ' +
Cast(@RowStartIndex AS VARCHAR(32)) + ' AND ' + CAST(@RowEndIndex AS VARCHAR(32))
+ ' ; SELECT count(*) as totalcount ' + @from + @condition + ' '
--PRINT @sql;
EXEC(@sql);
END
相关推荐
-
sqlserver 存储过程分页(按多条件排序)
cs页面调用代码: 复制代码 代码如下: public int TotalPage = 0; public int PageCurrent = 1; public int PageSize = 25; public int RowsCount = 0; string userid, username; public DataTable dt = new DataTable(); public string path, userwelcome; public string opt,cid; pro
-
sqlserver 存储过程分页代码第1/2页
复制代码 代码如下: declare @TotalCount int declare @TotalPageCount int exec P_viewPage_A 'type1','*','id','','id asc',1,0,4,3,@TotalCount output,@TotalPageCount output select * from type1 Create PROC P_viewPage_A /* nzperfect [no_mIss] 高效通用分页存储过程(双向检索) 2007.
-
SQL Server 2005通用分页存储过程及多表联接应用
这是不久前写的一个分页存储过程,可应用于SQL Server 2005上面: 复制代码 代码如下: if object_ID('[proc_SelectForPager]') is not null Drop Procedure [proc_SelectForPager] Go Create Proc proc_SelectForPager ( @Sql varchar(max) , @Order varchar(4000) , @CurrentPage int , @PageSize int,
-
SQL通用存储过程分页,支持多表联合
SQLPager存储过程 复制代码 代码如下: ALTER proc [dbo].[SqlPager] ( @tblName varchar(255), -- 表名(注意:可以多表链接) @strGetFields varchar(1000) = '*', -- 需要返回的列 @OrderfldName varchar(255)='', -- 排序的字段名 @PageSize int = 10, -- 页尺寸 @PageIndex int = 1, -- 页码 @doCount int = 1
-
sql2005 存储过程分页代码
复制代码 代码如下: create database Test on primary ( name='Test_Data.mdf', filename='D:\我的资料\sql\备份\Test_Data.mdf' ) log on ( name='Test_Data.ldf', filename='D:\我的资料\sql\备份\Test_Data.ldf' ) if object_id('tb') is not null drop table tb create table tb ( Col i
-
sqlserver 通用存储过程分页代码(附使用ROW_NUMBER()和不使用ROW_NUMBER()两种情况性能分析)
表结构: 复制代码 代码如下: CREATE TABLE [dbo].[Xtest]( [ID] [bigint] IDENTITY(1,1) NOT NULL, [XName] [nvarchar](50) NULL, [XDemo] [nvarchar](500) NULL, CONSTRAINT [PK_xtest] PRIMARY KEY CLUSTERED ( [ID] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF,
-
asp.net结合aspnetpager使用SQL2005的存储过程分页
SQL2005的存储过程: 复制代码 代码如下: set ANSI_NULLS ON set QUOTED_IDENTIFIER ON go ALTER PROCEDURE [dbo].[P_GetPagedReCord] (@startIndex INT, -- 开始索引号 @endindex INT, -- 结束索引号 @tblName varchar(255), -- 表名 @fldName varchar(255), -- 显示字段名 @OrderfldName varchar(255)
-
sql2005 存储过程分页示例代码
复制代码 代码如下: --分页存储过程示例 Alter PROCEDURE [dbo].[JH_PageDemo] @pageSize int = 9000000000, @pageIndex int = 1 , @orderBy Nvarchar(200) = '' -- 不加order By AS SET NOCOUNT ON --声明变量 DECLARE @select VARCHAR(3048); DECLARE @from VARCHAR(512); DECLARE @RowNumbe
-
MySql存储过程异常处理示例代码分享
下面是示例代码,在发生异常的时候会将异常信息存入日志表中,并继续运行后面的语句. 如果您有更好的建议,望不吝赐教. 存储过程异常处理示例 复制代码 代码如下: -- -------------------------------------------------------------------------------- -- Routine DDL -- Note: comments before and after the routine body will not be stored
-
php分页示例代码
<?php /* 需求,建立一个test数据库,在里边建一个test表,里面就 只要id字段,输入一下数据就可以啦.. 由于水平有限,难免出错.. */ $conn = mysql_connect("localhost","root",""); $maxnum = 2; //每页显示记录条数 mysql_select_db("test", $conn); $query1 = "SELECT
-
三层+存储过程实现分页示例代码
前台设计: 复制代码 代码如下: <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="paging.aspx.cs" Inherits="五二一练习.paging" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://ww
-
jquery+json实现数据列表分页示例代码
该实例中,新闻数据列表未使用表格显示.下面将所有源码附上,其中用到jquery插件. 复制代码 代码如下: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <c:
-
js对文章内容进行分页示例代码
Thinkphp中文章显示代码: 复制代码 代码如下: <div id="showContent">{$article.content|htmlspecialchars_decode}</div> <div id="articlePages"></div> js实现代码: 复制代码 代码如下: <script type="text/javascript"> var obj = docum
-
div li的多行多列 无刷新分页示例代码
翻页文件一次加载了全部的内容,因而不是很适合大型的网站,而适用于数据比较少的情况. 本例未使用数据库. PHP Code 复制代码 代码如下: <div class="container"> <ul id="content"> <?php for ($i=1; $i<=53; $i++){?> <li><span><?php echo $i?></span></li&g
-
bootstrap table 多选框分页保留示例代码
在使用bootstrap table的复选框功能的时候,由于采用服务端分页,当在第一页选择了某些数据,然后点击第二页选择一些数据,再次点回第一页,发现原先选择的数据已经清空了,原来的多选框并不支持翻页保留多选数据. 解决思路: 在分页的时候,吧原先选择的数据用一个全局变量保存,当再次翻页回来时,判断当前页数据是否存在于保存的数据数组中,存在则状态为选择.当然当取消选择的时候也要去删除数组中相应的数据. 为了解决这个问题,在查github上查文档发现有人提出了这个问题,并且作者wenzhixin
随机推荐
- Windows和Linux系统下perl连接SQL Server数据库的方法
- 简介JavaScript中fixed()方法的使用
- PHP 杂谈《重构-改善既有代码的设计》之二 对象之间搬移特性
- 详解vue的数据binding绑定原理
- JavaScript简单实现网页回到顶部功能
- 检查上传图片是否合法的函数,木马改后缀名、图片加恶意代码均逃不过
- Powershell实现从注册表获取用户配置脚本分享
- Linux 配置WWW服务器全攻略
- MYSQL 浅谈MyISAM 存储引擎
- jquery中交替点击事件的实现代码
- jQuery 1.4 15个你应该知道的新特性(译)
- 在表单提交前进行验证的几种方式整理
- 浅析Java的Hibernate框架中的缓存和延迟加载机制
- java中Callback简单使用总结
- Android系统模拟位置的使用方法
- Javascript 继承机制实例
- C#检测pc光驱里是否插入了光盘的方法
- Python数据结构与算法之图的基本实现及迭代器实例详解
- 彻底理解js面向对象之继承
- Vue服务端渲染实践之Web应用首屏耗时最优化方案
