比較|記錄集
先定義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"%>
<!-- #include file="conn.asp" -->
<%
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"%>
<!-- #include file="conn.asp" -->
<%
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"%>
<!-- #include file="conn.asp" -->
<%
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,功能比較強大,但比較複雜。
這種方式還有更有用的用法。詳見其它參考資料。