to caixinke(新一)
我试了,不行的,下面是我的dll源码:
Option Explicit
Private Context As ScriptingContext
Private Application As Application
Private Request As Request
Private Response As Response
Private Server As Server
Private Session As Session
Private rs As ADODB.Recordset
Private conn As ADODB.Connection
Public Sub OnStartPage(PassedScriptingContext As ScriptingContext)
Set Context = PassedScriptingContext
Set Application = Context.Application
Set Request = Context.Request
Set Response = Context.Response
Set Server = Context.Server
Set Session = Context.Session
End Sub
'返回所有的雇员列表
Public Function GetEmployeeList() As ADODB.Recordset
Dim strSql As String
Set rs = New ADODB.Recordset
strSql = "select * from [user]"
rs.CursorLocation = adUseClient
rs.Open strSql, conn, adOpenStatic
Set GetEmployeeList = rs
End Function
Public Sub OnEndPage()
Set Context = Nothing
Set Application = Nothing
Set Request = Nothing
Set Response = Nothing
Set Server = Nothing
Set Session = Nothing
End Sub
conn.asp源码:
<%
dim SqlUsername,SqlPassword,SqlDatabaseNam,SqlHostIP,ConnStr
'如果是SQL数据库,请认真修改好以下数据库选项
SqlUsername = "sa" 'SQL数据库用户名
SqlPassword = "sa" 'SQL数据库用户密码
SqlDatabaseName = "blogzt" 'SQL数据库名
SqlHostIP = "127.0.0.1" 'SQL主机IP地址(本地可用“127.0.0.1”或“(local)”,非本机请用真实IP)
ConnStr = "Provider = Sqloledb; User ID = " & SqlUsername & "; Password = " & SqlPassword & "; Initial Catalog = " & SqlDatabaseName & "; Data Source = " & SqlHostIP & ";"
Set conn = Server.CreateObject("ADODB.Connection")
conn.open ConnStr
If Err Then
Err.Clear
Set conn = Nothing
Response.Write "数据库连接出错,请检查Conn.asp文件中的数据库参数设置。"
Response.End
End If
%>
调用页源码:
<!--#include file="conn.asp"-->
<%
Dim DataQuery,rs
Set DataQuery=Server.CreateObject("bi.xxx")
Set Rs=DataQuery.GetEmployeeList()
if rs.eof then
Response.write "没有数据,请查询"
Response.end
end if
while not rs.eof
response.Write(rs("username")&"<br>")
rs.movenext
wend
%>
结果是:
ADODB.Recordset 错误 '800a0e7d'