当前位置:编程学习 > C#/ASP.NET >>

一个关于asp.net分页代码的问题

有一段asp.net的代码
<table width="770" border="0" align="center">
<%
Dim page%,pagesize%,totalpage%,rscount%,count%
pagesize=10 '每页显示的记录数 
Response.Write("<tr bgcolor='#FFEAD7'><td colspan='4'><div align='right'>")
if Cint(Request.QueryString("page"))<>0 then 
page=Cint(Request.QueryString("page"))
else
    page=1
end if
Response.Write("当前第"& page &"页,")   '显示当前页数
Dim conn As OledbConnection,ad As New OleDbCommand,rd As OleDbDataReader
conn=New OledbConnection("Provider=Microsoft.jet.OleDb.4.0;data source=" & Server.MapPath("/aspnet/数据库/music.mdb")) 
conn.Open() '打开数据库
ad=New OleDbCommand("select count(*) from music1",conn) 'Command对象连接表music
rd=ad.ExecuteReader()'Reader取回数据

rd.read()
rscount=rd.GetInt32(0)
totalpage = Cint(rd.GetInt32(0)/pagesize)+1
Response.Write("共" & totalpage & "页,")       '显示总页数
Response.Write("共" & rscount & "条记录 ")        '显示总记录数
conn.close()     '关闭数据库
Response.Write("</div></td></tr>")
Response.Write("<tr bgcolor='#FFDBA6'><td width='70' height='22'><div align='center'>编号</div></td><td width='180'><div align='center'>演唱</div></td>")
Response.Write("<td width='270'><div align='center'>歌名</div></td><td width='180'><div align='center'>日期</div></td></tr> ")   
conn.Open() '打开数据库
ad=New OleDbCommand("select * from music1 order by id limit " & (page-1)*pagesize & "," & pagesize,conn) '定义Command对象和连接数据表book
rd=ad.ExecuteReader()'定义Reader对象并取回数据
Dim i%,n%
Do while rd.read() '读下一条记录
n=n+1
count=(page-1)*pagesize+n
if n mod 2=0 then                 
    response.write("<a href=music.aspx?id=" & rd("id") & "><tr bgcolor='#FFFFD7' onmouseover=javascript:style.backgroundColor='#FEE89C' onmouseout=javascript:style.backgroundColor='#FFFFD7'>")
else
response.write("<a href=music.aspx?id=" & rd("id") & "><tr bgcolor='#CCFFFF' onmouseover=javascript:style.backgroundColor='#FEE89C' onmouseout=javascript:style.backgroundColor='#CCFFFF'>")
end if
response.write("<td align='center'height='20'>" & n & "</td>")
response.write("<td>" & rd("歌手") & "</td>") 
response.write("<td>" & rd("歌名") & "</td>") 
response.write("<td>" & rd("date") & "</td></a></tr>")
Loop
conn.close() '关闭数据库
Response.Write("<tr><td colspan='4'><div align='center'>")
Dim Strpage1$,Strpage2$
Strpage1=""
if page=1 then
Strpage1="第一页  上一页 "
else
Strpage1="<a href=more.aspx?page=1>第一页</a> <a href=more.aspx?page="& page-1 &">上一页</a> " '不为1,有链接
end if
Response.Write(Strpage1 & "第 ")
for i=1 to totalpage
if i=page then
Response.Write(" "& i &" ")
else
Response.Write("<a href=more.aspx?page="& i &">[" & i &"]</a> ")
end if
next i
Response.Write(" 页 ")
if page=totalpage or totalpage=0 then
Strpage2="下一页  最后页 "
else
Strpage2="<a href=more.aspx?page="& page+1 &">下一页</a> <a href=more.aspx?page=" & totalpage & "> 最后页 </a>"
end if
Response.Write(Strpage2)
Response.Write("</div></td></tr>")
%>
</table>
但运行到("select * from music order by id limit " & (page-1)*pagesize & "," & pagesize,conn)这句时候总是出错说是:语法错误 (操作符丢失) 在查询表达式 'id limit 0' 中.请教各位这句该怎么改?现在这里谢谢各位了. --------------------编程问答-------------------- 帮顶... --------------------编程问答-------------------- asp.net 又不是asp 為什么還要這樣寫?

把視圖層和業務邏輯層分開來寫好不好~~ --------------------编程问答-------------------- --------------------编程问答-------------------- select * from music order by id limit " & (page-1)*pagesize & "," & pagesize,conn) 这是什么语法 没遇到过

--------------------编程问答-------------------- 写的是vb.net? --------------------编程问答-------------------- ("select * from music order by id limit " & (page-1)*pagesize & "," & pagesize,conn)
本来想执行select * from music order by id limit 0,10
读0-10之间的数据,
--------------------编程问答-------------------- 恩,是用VB.NET的 --------------------编程问答-------------------- ("select * from music order by id limit " & (page-1)*pagesize & "," & pagesize,conn) 
本来想执行select * from music order by id limit 0,10 
读0-10之间的数据, 

sql里面 也没有这语法啊
当数据库执行的时候肯定报错啊 --------------------编程问答-------------------- 你去找找现成的分页代码看看  没有你这么写的
补充:.NET技术 ,  ASP.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,