简单实用asp.net mssql万能分页程序

简单实用asp教程.net mssql万能分页程序
一、比较万能的分页:

sql代码:

view sourceprint?1 select top 每页显示的记录数 * from topic where id not in

2  (select top (当前的页数-1)×每页显示的记录数 id from topic order by id desc) 

3  order by id desc

需要注意的是在access中不能是top 0,所以如果数据只有一页的话就得做判断了。。

二、sql2005中的分页代码:

sql代码:

view sourceprint?1 --讲查询出来的结果集作为一张临时表 

2 with temptable as ( 

3   select row_number() over (order by id desc) as rownum, * from tablename 

4 ) 

5 --从临时表中取得指定行号区间的行 

6 select * from temptable where rownum between @startindex and @endindex

注:row_number() over (order by id desc)为sql2005新增函数,表示取出每一列的行号

 

三、分页存储过程sql代码:

sql代码:

view sourceprint?01 set ansi_nulls on

02 go 

03 set quoted_identifier on

04 go 

05 -- ============================================= 

06 -- author:      牛腩 

07 -- create date: 2009-07-22 12:41 

08 -- description: 分页,用到了row_number() 

09 -- ============================================= 

10 alter procedure [dbo].[proc_showpage] 

11 @tblname   varchar(255),       -- 表名 

12 @strgetfields varchar(1000) = '*', -- 需要返回的列,默认* 

13 @strorder varchar(255)='',      -- 排序的字段名,必填 

14 @strordertype varchar(10)='asc', -- 排序的方式,默认asc 

15 @pagesize   int = 10,          -- 页尺寸,默认10 

16 @pageindex int = 1,           -- 页码,默认1 

17 @strwhere varchar(1500) = '' -- 查询条件 (注意: 不要加 where) 

18 as

19   

20 declare @strsql   varchar(5000) 

21   

22 if @strwhere !=''

23 set @strwhere=' where '+@strwhere 

24   

25 set @strsql= 

26 'select * from ('+ 

27     'select row_number() over (order by '+@strorder+' '+@strordertype+') as pos,'+@strgetfields+' '+ 

28     'from ['+@tblname+'] '+@strwhere+ 

29 ') as sp where pos between '+str((@pageindex-1)*@pagesize+1)+' and '+str(@pageindex*@pagesize) 

30   

31 exec (@strsql) 

32 print @strsql  -- 测试用,可在查询的时候看到生成的sql语句

 

时间: 2024-11-16 16:24:43

简单实用asp.net mssql万能分页程序的相关文章

vs2010制作简单的asp.net网站_实用技巧

直入主题: 打开visual studio 2010程序开发软件 单击菜单栏的文件,依次选新建->网站->ASP.NET空网站,这里我们选择空网站,利于今后DIY自己的网站,最好什么从头来,便于对各类架构的理解(若是选择ASP.NET网站也行,只是里面已经集成了一些东西) 这里我们默认解决方案的名称为WebSite1,单击确定后进入网站的代码页面,在右边的解决方案资源管理器里只有一个web.config文件,这个文件用于对网站进行全局化的设置 web.config其实是一个xml文档,里面有很

简单实用的FLASH导航菜单制作

菜单|导航 相信大家都对现在的FLASH导航情有独钟,但是对一些的FLASH特效望尘莫及(我就是其中一位:),特别是复杂的AS动作脚本.不过,通过自己的学习发现,一些很难理解的程序可以通过简单的AS动作脚本表现出同样的效果,今天我就来讲一个例子,可以让一些和我一样的FLASH的初学者(懂基础AS动作脚本程序的FLASHER)!希望大家有所体会,有所收获. 预览: 源文件下载 先来说说知名的<闪客帝国>的导航栏: 这种效果的导航栏在国内国外的例子很多的,很实用!只不过他们表现的形式不一样罢了,比

2007/12/23更新创意无限,简单实用(javascript log)_javascript技巧

在javascript开发过程中,如果总是使用alert的方式调试程序,在某些简单的程序中是可行的.  但是在通常的项目很复杂,这种方式已经很难满足,企业级开发的需要.  比如ajax项目中,存在一个3000行左右JS文件,其中存在各种自定义的javascript对象. 开发的过程中,总是需要在js程序执行到某个关键点的时候,监视自定义对象的值或状态, 判断执行结果是否是预期的样子,如果您通过alert看到某些关联对象的值,是很困难的. 存在以下两个明显的缺点:  1.假如一次执行中有n个关键点

简单的ASP统计制作实例_应用技巧

我做了一个网站,当然啦,跟大家一样,也摆了个计数器在上面,每天看计数器都在不断的翻,心里很高兴,不过后来我又想,到底是谁看了我的网站啊?是新朋友还是老朋友啊?也不知他们来了多少次,我还想给他们都编上号,于是我申请了 免费统计,不过一连换了N个都不满意,唉,看来,只有自己动手才能丰衣足食了,说干就干,还望高手笑话之于,不访指教. 我以ACCESS库为例子,其实用SQL SERVER库也只要改一下链接库的语句就得啦,库结构如下 库文件名: CONT.ASP 本来是CONT.MDB但在建好后把扩展名改

从一个简单的ASP.NET 5站点开启.NET跨平台之旅

  在经历了阿里云上"黑色1秒"的空欢喜之后,我们"被迫"考虑实现.NET的跨平台,将Web服务器由Windows换成Linux.而这种"被迫"在一个存在已久的愿望下,变得水到渠成.这个愿望就是 -- "Mac上写.NET程序,Linux上跑.NET程序". 既然水也到了,渠也成了,那我们还等什么,动身起程吧. 今天我们以我们迈出的第一步--一个部署在Linux上基于dnx/corefx/coreclr的非常简单的ASP.NE

ASP实例:一个简单的ASP无组件上传类

简单的ASP无组件上传类,发出来让大家看看.可以做做实验! 以下为引用的内容: <%@ language="javascript"%><%var self = Request.serverVariables("SCRIPT_NAME");if (Request.serverVariables("REQUEST_METHOD")=="POST"){        var oo = new uploadFile(

简单介绍ASP中Cache技术的应用

cache ASP从发布至今已经7年了,使用ASP技术已经相当成熟,自从微软推出了ASP.NET之后就逐渐停止了对ASP版本的更新.但是由于有很多人仍然习惯使用ASP来开发网站,所以,再次我将以一个简单的例子来说明在ASP中如何使用Cache. 简单的说使用Cache基本原理是,把经常需要且获得代价昂贵的数据在内存中持续保存一定时间,以供这些数据可以被直接地全局地访问.例如,有一些数据需要从数据库多个表中查询获得,且几乎每个页面都要调用这些数据. 这种情况下的最佳实现就是将这部分数据Cache起

最简单的ASP生成静态HTML页的方法[FSO支持]

下面介绍给大家一个最简单的ASP生成静态HTML页的方法,不用模板也能快速生成.比如要生成一个正常的index.asp页面,并且用ASP代码调出数据库中的内容,另建一个makehtml.asp的页面,加入一个textarea域,假设为name="body",将index.asp在textarea里调出来,如:<textarea name="body"><!--#include file="index.asp"--><

简单实用的网页表单设计:设计用户喜欢的网页表单

文章描述:漫谈表单设计. 跟你所知的相反,布满漂亮的按钮.颜色和字体,再加上一大把jQuery插件的表单并不一定好用.真的,这么做只能(零散地)体现表单可用性的1/3. In this article, we'll provide practical guidelines that you can easily follow. These guidelines have been crafted from usability testing, field testing, website tra