sqlserver翻页,翻页查询sql

SQLSERVER 两表关联查询分页显示 SQL语句

如果你用的是SQL2008以后的数据库版本,可以这样

网站制作、建网站找专业网站设计公司成都创新互联:定制网站、模板网站、仿站、小程序开发、软件开发、重庆App定制开发等。做网站价格咨询成都创新互联:服务完善、十余年建站、值得信赖!网站制作电话:028-86922220

SELECT ROW_NUMBER() OVER (ORDER BY B.HID DESC) BH, B.*

FROM

(SELECT h.[医院名称],k.[科室名称],k.[科室编号],k.id,k.kid

from [医院表] as h right join [科室表] as k on k.hid = h.hid

) B

WHERE BH BETWEEN ($page_size * $page_num) AND ($page_size * $page_num +$page_size)

ASP 网页调用 SQLserver 2000数据库的数据(比较多,2W条),慢的要死。翻页也慢

sql server 2008都出来了,如果是现在从Oracle迁移到Ms Sql Server的话建议和你们领导说说换05最好是08,相对来说Oracle的价格应该更贵吧。05,08性能上也提升了,再者就是加了不少函数,存储过程分页05,08的用ROW_NUMBER()函数是很方便的。还有不要select * ,写出具体字段。在索引上作优化,索引作的好即使是2000,2W条数据没什么问题。

如果改成存储过程分页,不改asp程序基本不可能。

JSP实现翻页功能

第一个文件pagescount.jsp

%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="gb2312"%

%

String path = request.getContextPath();

String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";

%

!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

html

head

base href="%=basePath%"

titlepagescount/title

meta http-equiv="pragma" content="no-cache"

meta http-equiv="cache-control" content="no-cache"

meta http-equiv="expires" content="0"

meta http-equiv="keywords" content="keyword1,keyword2,keyword3"

meta http-equiv="description" content="This is my page"

!--

link rel="stylesheet" type="text/css" href="styles.css"

--

/head

body

%!

//设置每张网页显示三笔记录(每页显示的记录数)

int PageSize=3;

//设置欲显示的页数(初始页)

int ShowPage=1;

//ResultSet的记录笔数(总记录数)

int RowCount=0;

//ResultSet分页后的总数(总页数)

int PageCount=0;

Connection conn=null;

Statement stmt=null;

ResultSet rs=null;

%

%!

//连接数据库并初始数据

public void jspInit()

{

try{

String Driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";

String DBurl = "jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";

String user = "sa";

String password = "sa";

Class.forName(Driver);

conn=DriverManager.getConnection(DBurl,user,password);

stmt=conn.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,ResultSet.CONCUR_READ_ONLY);

rs=stmt.executeQuery("select * from titles");

//将指标移至最后一条记录

rs.last();

//获取记录总数

RowCount=rs.getRow();

//计算显示的页数(关键)

PageCount=((RowCount%PageSize)==0?(RowCount/PageSize):(RowCount/PageSize)+1);

}catch(Exception e){

System.out.println(e.getMessage());

}

}

//执行关闭各个对象的操作

public void jspDestory()

{

try{

rs.close();

stmt.close();

conn.close();

}catch(Exception e){

System.out.println(e.getMessage());

}

}

%

/body

/html

第二个文件

pages.jsp

%@ page language="java" import="java.util.*,java.sql.*" pageEncoding="gb2312"%

%@include file="pagescount.jsp" %

!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"

html

head

base href="%=basePath%"

title分页显示/title

meta http-equiv="pragma" content="no-cache"

meta http-equiv="cache-control" content="no-cache"

meta http-equiv="expires" content="0"

meta http-equiv="keywords" content="keyword1,keyword2,keyword3"

meta http-equiv="description" content="This is my page"

meta http-equiv="author" content="sunxch"

!--

link rel="stylesheet" type="text/css" href="styles.css"

--

/head

body bgcolor="cce8cf"

center

%

String ToPage=request.getParameter("ToPage");

//判断是否取得ToPage参数

if(ToPage!=null)

{

//取得指定显示的分页页数

ShowPage=Integer.parseInt(ToPage);

//下面的语句判断用户输入的页数是否正确

if(ShowPage=PageCount)

{

ShowPage=PageCount;

}

else if(ShowPage=0)

{

ShowPage=1;

}

}

//计算欲显示页的第一笔记录位置

rs.absolute((ShowPage-1)*PageSize+1);

%

h3当前在第

font size="4" color="red"%=ShowPage %/font页,共%=PageCount %页/h3

p

%

//利用for循环配合PageSize属性取出一页中的数据

for(int i=1;i=PageSize;i++)

{

%

table border="1" width="90%"

tr

td书名ID/td

td%=rs.getString("pub_id") %/td

td书名/td

td%=rs.getString("title") %/td

td类型/td

td%=rs.getString("type") %/td

td价格/td

td%=rs.getFloat("price") %/td

/tr

tr

td备注/td

td colspan="7"%=rs.getString("notes") %/td

/tr

/table

p

%

//下面的语句用于输出最后一条记录时,将指针移到最后一笔记录之后

if(!rs.next())

{

//跳出for循环

break;

}

}

%

table

tr

%

//判断当前是否在第一页,不是第一页,则显示到第一页与下一页的连接

if(ShowPage!=1)

{

%

td width=150

a href="pages.jsp?ToPage=%=1 %"第一页/a

/td

td width=150

a href="pages.jsp?ToPage=%=ShowPage-1 %"上一页/a

/td

%

}

//判断是否在最后一页,是,则显示到最后一页和下一页

if(ShowPage!=PageCount)

{

%

td width=150

a href="pages.jsp?ToPage=%=ShowPage+1 %"下一页/a

/td

td width=150

a href="pages.jsp?ToPage=%=PageCount %"最后一页/a

/td

%

}

%

/tr

tr

td colspan="4" align="center"

form action="pages.jsp" method="post" name="form1"

input type="text" name="ToPage" value="%=ShowPage %" style="height:25px;width:40px"页

a href="javascript:window.document.form1.submit();"GO/a

/form

/td

/tr

/table

/center

script language="javascript"

function go()

{

window.document.form1.submit();

}

/script

/body

/html

求PHP+SQLServer的翻页效果,该怎么处理

设置三个变量,当前页$pageNow ,数据总条数$rowCount,再加一个每页显示的数目$pageRow

如何用datagrid分页?(c# + SqlServer),在线等

把datagrid的翻页功能打开,设置显示多少行,它会帮你翻页的

或者自己写一个存储过程,每次返回哪些行就行了


新闻标题:sqlserver翻页,翻页查询sql
标题链接:http://scyanting.com/article/dssidsd.html