0

我编写了一个代码,需要我从数据库中只找到一行记录集到变量中。

dim Connect,conn_,data,sql

Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "toServer"
sql = "SELECT * from sppro where proj_name='pname'"
set Data = Connect.Execute(sql)

response.write data("proj_id")

我只是找不到正确的方法来检索和查看单个记录集...我发现了一些关于光标的东西,但我根本不明白...谁能给我解释一下?

编辑:

我用这段代码得到的错误如下。

ADODB.Field 错误“80020009”

BOF 或 EOF 为 True,或者当前记录已被删除。请求的操作需要当前记录。

/bkpi-msn/Include/ServerSideAjax.asp,第 0 行

4

1 回答 1

2

如果我理解正确,您已经知道如何显示数据库中的一条记录,但现在您想要显示多条记录。那正确吗?

通过对代码进行一些更改,您可以遍历所有记录:

dim Connect,conn_,data,sql

Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "toServer"
sql = "SELECT * from sppro where proj_name='pname'"
set Data = Connect.Execute(sql)

Do Until Data.Eof

    response.write data("proj_id")

    Data.MoveNext
Loop

编辑:要检索一行,您可以使用以下内容。基本上是一样的,只是有一个检查确保至少有一条记录,并且不需要循环遍历记录集。

dim Connect,conn_,data,sql

Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "toServer"
sql = "SELECT * from sppro where proj_name='pname'"
set Data = Connect.Execute(sql)

If Not Data.Eof Then

    response.write data("proj_id")

End If
于 2013-04-15T09:08:41.370 回答