当前位置:编程学习 > asp >>

asp 用存储过程实现数据分页

答案:一、创建表 tiku_koushi



if exists (select * from dbo.sysobjects where id =
object_id(N'[dbo].[tiku_koushi]') and OBJECTPROPERTY
(id, N'IsUserTable') = 1)
drop table [dbo].[tiku_koushi]
GO

CREATE TABLE [dbo].[tiku_koushi] (
[id] [int] IDENTITY (1, 1) NOT NULL ,

[title] [varchar] (250) COLLATE

Chinese_PRC_CI_AS NULL ,

[list2_id] [char] (10) COLLATE

Chinese_PRC_CI_AS NULL

) ON [PRIMARY]

GO



  二、存储过程 sp_c


CREATE proc sp_c
@tablename varchar(50),
@title varchar(250),

@list2_id varchar(50)

as

if @tablename='tiku_koushi'

select count(*) from tiku_koushi where title like '%'+@title+'%' and list2_id=@list2_id
GO






  三、存储过程 sp_search_tiku


CREATE PROCEDURE sp_search_tiku

@tablename varchar(50),

@title varchar(250),

@list2_id varchar(10),

@pagesize int,

@page int

AS

if @tablename='tiku_koushi'

begin

declare @ks int

declare @str varchar(200)

set @ks=@pagesize*(@page-1)

if not exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[temp_table91]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)

begin

select * into temp_table91 from tiku_koushi where
title like '%'+@title+'%' and list2_id=@list2_id order
by id desc

set rowcount @pagesize

set @str='select * from temp_table91 where id not in
(select top '+str(@ks)+' id from temp_table91)'

execute(@str)

drop table temp_table91

end

end
GO





  四、search_koushi.asp


<!-- #include file="conn.asp" -->
<%
line=6
if request("page")="" then
page=1
else
page=request("page")
end if


if page<1 then
page=1
end if



title=trim(request("title"))
list2_id=trim(request("list2_id"))
set rs2=conn.execute("sp_c 'tiku_koushi','"&title&"','"&list2_id&"'")
pagecount=CInt(rs2(0)\line)
if(CInt(rs2(0)) mod line)=0 then
pagecount=pagecount
else
pagecount=pagecount+1
end if


if CInt(page)>=pagecount then
page=CInt(pagecount)
end if
str=""
str=str&"page="&page&"&title="&title&"&list2_id="&list2_id
set rs=conn.execute

("sp_search_tiku 'tiku_koushi','"&title&"','"&list2_id&"','"&line&"','"&CInt(page)&"'")
if rs.eof then
response.write "no record"





else
%>
<html>

<head>

<style type="text/css">

td{font-size:12px;}

a{text-decoration:none;}

</style>
<script language="javascript">
</script>
</head>

<body>
<table width="518" border="1" bordercolorlight="000000"
bordercolordark="#ffffff"
align="center" cellpadding="0" cellspacing="0">
<!--DWLayoutTable-->

<tr bgcolor=#dfdfdf>

<td width="454" align="center" height=24 valign="middle">口试题的题目</td>

<td width="63" align="center" valign="middle">删除</td>

</tr>

<% do until rs.eof %>

<tr height=22>

<td valign="middle">·<a href=>
onclick="window.open('editkoushi.asp?id=<%=rs("id")%>&page=<%=page%>&title=<%=title%>&list2_id=<%=list2_id%>','','width=518
height=160 left=100')">

<%=rs("title")%></a></td>

<td align="center" valign="middle">删除</td>

</tr>

<%





rs.movenext

loop

%>

<tr align="left" valign="middle" bgcolor="efeff6"
height=22>

<td colspan="2" style="padding-left:6px;">

<a href=>href=>href=>href=>
一共 <%=pagecount%> 页 当前页为: <%=page%>/<%=pagecount%> 页

  共有 <%=rs2(0)%> 条记录</td>

</tr>

</table>

</body>

</html>

<%
rs2.close

set rs2=nothing

rs.close

set rs=nothing

end if

%>


上一个:两种添加数据到WEB DropDownList 控件的方法
下一个:人民银行网站建设中数据库存储过程的调用

CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,