首页  ·  知识 ·  编程语言
几种打开记录集方式的比较
佚名  cfan.com.cn  ASP  编辑:dezai  图片来源:网络
schoolnewstext>几种打开记录集方式的比较先定义conn.asp%dim objConndim strConnstrConn = "Provider=
几种打开记录集方式的比较

先定义conn.asp
<%
dim objConn
dim strConn
strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & chr(34) & Server.MapPath("data.mdb") & chr(34)
set objConn = server.createobject("adodb.connection")
objConn.open strConn
%>

再来看一看几种不同打开记录集(recordset)的方式

方式1、
dim sql
dim objRs

sql = "select * from table1"
set objRs = objConn.execute( sql )

这种方式通过执行sql,返回后得到记录集,比较简单地得到经过筛选过的记录集,
但是通过这种方式得到的记录集,不能进行分页显示。

文件text1.asp

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>


<%
dim sql
dim objRs

sql = "select * from table1"
set objRs = objConn.execute( sql )

objRs.pagesize = 5
objRs.absolutepage = 1
%>

请求该页面得到的结果是:

------------------------------------------------------------
错误类型:
ADODB.Recordset (0x800A0CB3)
当前记录集不支持书签。这可能是提供程序或选定的游标类型的限制。
/msg/test1.asp, 第 12 行


浏览器类型:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)

网页:
GET /msg/test1.asp

时间:
2005年9月21日, 19:58:01
------------------------------------------------------------

方式2、
dim objRs
set objRs = Server.CreateObject( "ADODB.Recordset" )
objRs.open "table1" , objConn , 1 , 2

用这种方式打开的记录可以进行分页显示。

<%
dim objRs

set objRs = Server.CreateObject( "ADODB.Recordset" )
objRs.open "table1" , objConn , 1 , 2

objRs.pagesize = 5
objRs.absolutepage = 1
%>

用这个试试,哈哈,顺利运行。

但这种方式打开的记录集不能排序

文件test2.asp

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>

<%
dim objRs

set objRs = Server.CreateObject( "ADODB.Recordset" )
objRs.open "table1" , objConn , 1 , 2

objRs.sort = "field1"
%>

请求该页面得到的结果是:

------------------------------------------------------------
错误类型:
ADODB.Recordset (0x800A0CB3)
当前提供程序不支持排序或过滤所必需的界面。
/msg/test2.asp, 第 17 行


浏览器类型:
Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322)

网页:
GET /msg/test2.asp

时间:
2005年9月21日, 20:17:32
------------------------------------------------------------

怎办呢?

哈,这样就行啦。

<%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%>

<%
dim objRs

set objRs = Server.CreateObject( "ADODB.Recordset" )
objRs.CursorLocation = 3
objRs.open "table1" , objConn , 1 , 2

objRs.sort = "field1 desc"
%>

总结一下:
1、方式1,可以通过sql语句,方便地筛选你想要的记录。
2、方式2,功能比较强大,但比较复杂。
这种方式还有更有用的用法。详见其它参考资料。

本文作者:佚名 来源:cfan.com.cn
CIO之家 www.ciozj.com 微信公众号:imciow
   
免责声明:本站转载此文章旨在分享信息,不代表对其内容的完全认同。文章来源已尽可能注明,若涉及版权问题,请及时与我们联系,我们将积极配合处理。同时,我们无法对文章内容的真实性、准确性及完整性进行完全保证,对于因文章内容而产生的任何后果,本账号不承担法律责任。转载仅出于传播目的,读者应自行对内容进行核实与判断。请谨慎参考文章信息,一切责任由读者自行承担。
延伸阅读