几种打开记录集方式的比较
<A>几种打开记录集方式的比较<BR><BR>先定义conn.asp<BR><%<BR>dim objConn<BR>dim strConn<BR>strConn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" ; chr(34) ; Server.MapPath("data.mdb") ; chr(34) <BR>set objConn = server.createobject("adodb.connection")<BR>objConn.open strConn <BR>%><BR><BR>再来看一看几种不同打开记录集(recordset)的方式<BR><BR>方式1、<BR>dim sql<BR>dim objRs<BR><BR>sql = "select * from table1"<BR>set objRs = objConn.execute( sql )<BR><BR>这种方式通过执行sql,返回后得到记录集,比较简单地得到经过筛选过的记录集,<BR>但是通过这种方式得到的记录集,不能进行分页显示。<BR><BR>文件text1.asp<BR><BR><%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%><BR><!-- #include file="conn.asp" --><BR><BR><%<BR>dim sql<BR>dim objRs<BR><BR>sql = "select * from table1"<BR>set objRs = objConn.execute( sql )<BR><BR>objRs.pagesize = 5<BR>objRs.absolutepage = 1<BR>%><BR><BR>请求该页面得到的结果是:<BR><BR>------------------------------------------------------------<BR>错误类型:<BR>ADODB.Recordset (0x800A0CB3)<BR>当前记录集不支持书签。这可能是提供程序或选定的游标类型的限制。<BR>/msg/test1.asp, 第 12 行<BR><BR><BR>浏览器类型:<BR>Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322) <BR><BR>网页:<BR>GET /msg/test1.asp <BR><BR>时间:<BR>2005年9月21日, 19:58:01 <BR>------------------------------------------------------------<BR><BR>方式2、<BR>dim objRs<BR>set objRs = Server.CreateObject( "ADODB.Recordset" )<BR>objRs.open "table1" , objConn , 1 , 2<BR><BR>用这种方式打开的记录可以进行分页显示。<BR><BR><%<BR>dim objRs<BR><BR>set objRs = Server.CreateObject( "ADODB.Recordset" )<BR>objRs.open "table1" , objConn , 1 , 2<BR><BR>objRs.pagesize = 5<BR>objRs.absolutepage = 1<BR>%> <BR><BR>用这个试试,哈哈,顺利运行。<BR><BR>但这种方式打开的记录集不能排序<BR><BR>文件test2.asp<BR><BR><%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%><BR><!-- #include file="conn.asp" --><BR><%<BR>dim objRs<BR><BR>set objRs = Server.CreateObject( "ADODB.Recordset" )<BR>objRs.open "table1" , objConn , 1 , 2<BR><BR>objRs.sort = "field1"<BR>%><BR><BR>请求该页面得到的结果是:<BR><BR>------------------------------------------------------------<BR>错误类型:<BR>ADODB.Recordset (0x800A0CB3)<BR>当前提供程序不支持排序或过滤所必需的界面。<BR>/msg/test2.asp, 第 17 行<BR><BR><BR>浏览器类型:<BR>Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 1.1.4322) <BR><BR>网页:<BR>GET /msg/test2.asp <BR><BR>时间:<BR>2005年9月21日, 20:17:32 <BR>------------------------------------------------------------<BR><BR>怎办呢?<BR><BR>哈,这样就行啦。<BR><BR><%@LANGUAGE="VBSCRIPT" CODEPAGE="936"%><BR><!-- #include file="conn.asp" --><BR><%<BR>dim objRs<BR><BR>set objRs = Server.CreateObject( "ADODB.Recordset" )<BR>objRs.CursorLocation = 3<BR>objRs.open "table1" , objConn , 1 , 2<BR><BR>objRs.sort = "field1 desc"<BR>%><BR><BR>总结一下:<BR>1、方式1,可以通过sql语句,方便地筛选你想要的记录。<BR>2、方式2,功能比较强大,但比较复杂。<BR>这种方式还有更有用的用法。详见其它参考资料。</A>
页:
[1]