php recordset,ADO Recordset

ADO Recordset 对象

Recordset 对象

ADO Recordset 对象用于容纳一个来自数据库表的记录集。一个 Recordset 对象由记录和列(字段)组成。

在 ADO 中,此对象是最重要且最常用于对数据库的数据进行操作的对象。

ProgID

set objRecordset=Server.CreateObject("ADODB.recordset")

当您首次打开一个 Recordset 时,当前记录指针将指向第一个记录,同时 BOF 和 EOF 属性为 False。如果没有记录,BOF 和 EOF 属性为 True。

Recordset 对象能够支持两种更新类型:

立即更新 - 一旦调用 Update 方法,所有更改被立即写入数据库。

批更新 - provider 将缓存多个更改,然后使用 UpdateBatch 方法把这些更改传送到数据库。

在 ADO,定义了 4 中不同的游标(指针)类型:

动态游标 - 允许您查看其他用户所作的添加、更改和删除

键集游标 - 类似动态游标,不同的是您无法查看有其他用户所做的添加,并且它会防止您访问其他用户已删除的记录。其他用户所做的数据更改仍然是可见的。

静态游标 - 提供记录集的静态副本,可用来查找数据或生成报告。此外,由其他用户所做的添加、更改和删除将是不可见的。当您打开一个客户端 Recordset 对象时,这是唯一被允许的游标类型。

仅向前游标 - 只允许在 Recordset 中向前滚动。此外,由其他用户所做的添加、更改和删除将是不可见的。

可通过 CursorType 属性或 Open 方法中的 CursorType 参数来设置游标的类型。

注释:并非所有的提供者(providers)支持 Recordset 对象的所有方法和属性。

属性

属性

描述

AbsolutePage

设置或返回一个可指定 Recordset 对象中页码的值。

AbsolutePosition

设置或返回一个值,此值可指定 Recordset 对象中当前记录的顺序位置(序号位置)。

ActiveCommand

返回与 Recordset 对象相关联的 Command 对象。

ActiveConnection

如果连接被关闭,设置或返回连接的定义,如果连接打开,设置或返回当前的 Connection 对象。

BOF

如果当前的记录位置在第一条记录之前,则返回 true,否则返回 fasle。

Bookmark

设置或返回一个书签。此书签保存当前记录的位置。

CacheSize

设置或返回能够被缓存的记录的数目。

CursorLocation

设置或返回游标服务的位置。

CursorType

设置或返回一个 Recordset 对象的游标类型。

DataMember

设置或返回要从 DataSource 属性所引用的对象中检索的数据成员的名称。

DataSource

指定一个包含要被表示为 Recordset 对象的数据的对象。

EditMode

返回当前记录的编辑状态。

EOF

如果当前记录的位置在最后的记录之后,则返回 true,否则返回 fasle。

Filter

返回一个针对 Recordset 对象中数据的过滤器。

Index

设置或返回 Recordset 对象的当前索引的名称。

LockType

设置或返回当编辑 Recordset 中的一条记录时,可指定锁定类型的值。

MarshalOptions

设置或返回一个值,此值指定哪些记录被返回服务器。

MaxRecords

设置或返回从一个查询返回 Recordset 对象的的最大记录数目。

PageCount

返回一个 Recordset 对象中的数据页数。

PageSize

设置或返回 Recordset 对象的一个单一页面上所允许的最大记录数。

RecordCount

返回一个 Recordset 对象中的记录数目。

Sort

设置或返回一个或多个作为 Recordset 排序基准的字段名。

Source

设置一个字符串值,或一个 Command 对象引用,或返回一个字符串值,此值可指示 Recordset 对象的数据源。

State

返回一个值,此值可描述是否 Recordset 对象是打开、关闭、正在连接、正在执行或正在取回数据。

Status

返回有关批更新或其他大量操作的当前记录的状态。

StayInSync

设置或返回当父记录位置改变时对子记录的引用是否改变。

方法

方法

描述

AddNew

创建一条新记录。

Cancel

撤销一次执行。

CancelBatch

撤销一次批更新。

CancelUpdate

撤销对 Recordset 对象的一条记录所做的更改。

Clone

创建一个已有 Recordset 的副本。

Close

关闭一个 Recordset。

CompareBookmarks

比较两个书签。

Delete

删除一条记录或一组记录。

Find

搜索一个 Recordset 中满足指定某个条件的一条记录。

GetRows

把多条记录从一个 Recordset 对象中拷贝到一个二维数组中。

GetString

将 Recordset 作为字符串返回。

Move

在 Recordset 对象中移动记录指针。

MoveFirst

把记录指针移动到第一条记录。

MoveLast

把记录指针移动到最后一条记录。

MoveNext

把记录指针移动到下一条记录。

MovePrevious把记录指针移动到上一条记录。

NextRecordset

通过执行一系列命令清除当前 Recordset 对象并返回下一个 Recordset。

Open

打开一个数据库元素,此元素可提供对表的记录、查询的结果或保存的 Recordset 的访问。

Requery

通过重新执行对象所基于的查询来更新 Recordset 对象中的数据。

Resync

从原始数据库刷新当前 Recordset 中的数据。

Save

把 Recordset 对象保存到 file 或 Stream 对象中。

Seek

搜索 Recordset 的索引以快速定位与指定的值相匹配的行,并使其成为当前行。

Supports

返回一个布尔值,此值可定义 Recordset 对象是否支持特定类型的功能。

Update

保存所有对 Recordset 对象中的一条单一记录所做的更改。

UpdateBatch

把所有 Recordset 中的更改存入数据库。请在批更新模式中使用。

事件

Note: You cannot handle events using VBScript or JScript (only Visual Basic, Visual C++, and Visual J++ languages can handle events).

事件

描述

EndOfRecordset

当试图移动到超过 Recordset 结尾的行时被触发。

FetchComplete

当异步操作中的所有记录均被读取后被触发。

FetchProgress

在异步操作期间被定期地触发,报告已读取多少记录。

FieldChangeComplete

Field 对象的值更改被触发。

MoveComplete

Recordset 中的当前位置更改后被触发。

RecordChangeComplete

一条记录更改之后被触发。

RecordsetChangeComplete

在 Recordset 更改之后被触发。

WillChangeField

在 Field 对象的值更改之前被触发

WillChangeRecord

在一条记录更改之前被触发。

WillChangeRecordset

在 Recordset 更改之前被触发。

WillMove

在 Recordset 中的当前位置更改之前被触发。

集合

集合

描述

Fields

指示在此 Recordset 对象中 Field 对象的数目。

Properties

包含所有 Recordset 对象中的 Property 对象。

Fields 集合的属性

属性

描述

Count

返回 fields 集合中项目的数目。以 0 起始。

例子:

countfields = rs.Fields.Count

Item(named_item/number)

返回 fields 集合中的某个指定的项目。

例子:

itemfields = rs.Fields.Item(1)

或者

itemfields = rs.Fields.Item("Name")

Properties 集合的属性

属性

描述

Count

返回 properties 集合中项目的数目。以 0 起始。

例子:

countprop = rs.Properties.Count

Item(named_item/number)

返回 properties 集合中某个指定的项目。

例子:

itemprop = rs.Properties.Item(1)

或者

itemprop = rs.Properties.Item("Name")

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值