ADO Recordset对象方法详解:AddNew与CancelBatch

需积分: 0 1 下载量 97 浏览量 更新于2024-08-15 收藏 204KB PPT 举报
"《Web数据库技术(第二版)》第8章主要讲解了ADO_Recordset对象,涵盖了如何创建Recordset对象、使用AddNew方法添加记录、CancelBatch方法取消未确认的批量更新,以及如何通过BOF和EOF检测记录的存在,并通过实例展示了读取数据库数据的步骤。" 在Web数据库开发中,ADO_Recordset对象是一个非常重要的概念,它是ActiveX Data Objects (ADO)模型中的核心组件,用于处理和操作数据库中的数据。Recordset对象提供了一种方式,使开发者能够方便地遍历、检索、更新和删除数据库中的记录。 1. 创建Recordset对象 创建Recordset对象是通过调用ADODB.Recordset的实例化方法完成的。在VBScript中,可以使用以下代码创建一个Recordset对象并打开连接: ```vbscript set rs = Server.CreateObject("ADODB.Recordset") rs.Open "Select * from person", "DSN=db1;UID=ruan;PWD=l23" ``` 这段代码首先创建了一个Recordset对象`rs`,然后通过`Open`方法执行SQL查询(选择person表的所有列)并连接到指定的数据源(DSN)。 2. 检测Recordset中的记录 使用`BOF`(Beginning Of File)和`EOF`(End Of File)属性,可以判断Recordset是否包含记录。如果`BOF`和`EOF`都为真,表示Recordset为空;反之,如果至少有一个为假,表示有记录存在。 ```vbscript if rs.EOF then response.write "没有查到记录" else '...处理记录... end if ``` 3. AddNew方法 `AddNew`方法用于在可更新的Recordset中添加新的记录。它需要两个参数:Fieldlist(字段列表)和Values(对应字段的值)。例如: ```vbscript rs.AddNew ["pname", "张三"], ["paddr", "北京市"] ``` 这会在person表中插入一个新记录,其中pname为"张三",paddr为"北京市"。 4. CancelBatch方法 `CancelBatch`方法用于取消尚未提交的批量更新操作。当在Recordset上执行了多条更新、插入或删除操作但未调用`UpdateBatch`时,可以通过`CancelBatch`撤销这些操作。`AffectRecords`参数可指定取消操作影响的记录数量,如: ```vbscript rs.CancelBatch AffectRecords ``` 5. 读取数据记录 通过遍历Recordset,可以读取数据库中的数据。以下示例展示了如何读取并显示person表中的姓名和地址: ```vbscript do while not rs.EOF name = rs("pname") addr = rs("paddr") response.write "<p><H4>" & name & ":" & addr & "</H4>" rs.MoveNext loop ``` 在这个例子中,每次循环都会获取当前记录的pname和paddr字段的值,并将其输出到HTML页面中。 ADO_Recordset对象是Web数据库开发中与数据交互的基础,通过掌握其创建、操作和读取数据的方法,可以实现高效且灵活的数据库应用。