我想要在很多页面上使用的对象包含自己的连接和记录集变量,以便它们不需要在每个想要直接访问记录集的页面上声明,而不需要进行交互与通常处理这个对象的功能。VBScript类/对象问题
但是,记录集显然不成为对象。
<!--
METADATA
TYPE="TypeLib"
NAME="Microsoft ActiveX Data Objects 2.5 Library"
UUID="{00000205-0000-0010-8000-00AA006D2EA4}"
-->
而且
<%
Option Explicit
Class cls
Public conn
Public rs
Public Sub OpenRS(ByRef conn, ByRef rs, ByRef sql, ByRef Mode,
ByRef CursorType, ByRef LockType)
Set conn = Server.CreateObject("ADODB.Connection")
conn.Provider = "Microsoft.Jet.OLEDB.4.0"
conn.Mode = Mode
conn.Open = Server.MapPath(".") & "\mb\testdb.mdb"
Set rs = Server.CreateObject("ADODB.Recordset")
rs.CursorType = CursorType
rs.LockType = LockType
rs.ActiveConnection = conn
rs.Open sql
End Sub
Public Sub CloseRS(ByRef conn, ByRef rs)
If VarType(rs) = vbObject Then rs.Close
Set rs = Nothing
If VarType(conn) = vbObject Then conn.Close
Set conn = Nothing
End Sub
Private Sub Class_Initialize()
Set conn = Nothing
Set rs = Nothing
End Sub
End Class
Dim a: Set a = New cls
a.OpenRS a.conn,a.rs, "SELECT * FROM emp",
adModeRead, adOpenForwardOnly, adLockPessimistic
Response.Write(a.rs.EOF)
%>
OpenRS过程创建连接和记录集,那么为什么你将它们作为参数传递?尝试不传递连接或记录集,只传递sql,cursortype和locktype。 – Tester101 2010-01-14 14:52:16