使用 Recordset 对象处理结果
为了检索数据、检查结果和更改数据库,ADO 提供了 Recordset 对象。正如名字所示,“Recordset”对象具有用来检索和显示数据库行(或叫“记录”)的功能,这取决于您的查询约束条件。“Recordset”对象保留由查询返回的每一条记录的位置,这样就能使您查看所有的结果,每次一条。
检索记录集
成功的 Web 数据应用程序既使用“Connection”对象来建立链接,又使用“Recordset”对象来处理返回的数据。通过综合使用这两种对象的一些特殊功能,开发出的数据库应用程序几乎可以执行所有的数据处理任务。例如,下面的服务器端脚本使用“Recordset”对象执行 SQL 的 SELECT 命令。此 SELECT 命令用来检索基于查询约束条件的信息集。此查询也包含 SQL WHERE 子句,用来将查询限制到一个指定的标准。在本例中,WHERE 子句将查询限制在 Customers 数据库表中姓氏字段包含 Smith 的所有记录。
<%
'建立数据源连接
strConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:DataEmployees.mdb"
Set cnn = Server.CreateObject("ADODB.Connection")
cnn.Open strConnectionString
'例示 Recordset 对象
Set rstCustomers = Server.CreateObject("ADODB.Recordset")
'使用 Open 方法打开记录集
'并使用通过 Connection 对象建立的连接。
strSQL = "SELECT FirstName, LastName FROM Customers WHERE LastName = 'Smith' "
rstCustomers.Open strSQL, cnn
'遍历记录集和显示结果
'并使用 MoveNext 方法递增记录位置。
Set objFirstName = rstCustomers("FirstName")
Set objLastName = rstCustomers("LastName")
Do Until rstCustomers.EOF
Response.Write objFirstName & " " & objLastName & "
"
rstCustomers.MoveNext
Loop
%>
注意,在上例中,“Connection”对象建立数据库连接,而“Recordset”对象使用同一连接从数据库中检索结果。当需要精确配置建立数据库链接的方式时,该方法非常有用。例如,如果要指定在连接中止之前的时间延迟,可能需要使用“Connection”对象设置该属性。但是,如果只想使用 ADO 的默认连接属性建立连接,您可以使用“Recordset”对象的“Open”方法来建立链接: