日期:2014-05-16  浏览次数:21327 次

access的窗体绑定的数据集?
access的窗体的数据集为何要搞两份Me.Recordset和Me.RecordsetClone?

程序中对这两个数据集操作有何区别?

------解决方案--------------------
帮助中有说明如下。

Recordset 属性返回的记录集对象提供窗体、报表、列表框控件或组合框控件中正被浏览的数据。例如,如果窗体是基于查询产生的,引用 Recordset 属性就相当于用同样的查询复制 Recordset 对象。但是,与使用 RecordsetClone 属性不同的是,如果更改由窗体的 Recordset 属性返回的记录集内哪条记录为当前的这一设定,就会设置窗体的当前记录。



RecordsetClone 属性设置是由窗体的 RecordSource 属性指定的基础查询或基础表的一个副本。例如,如果窗体基于一个查询,那么对 RecordsetClone 属性的引用与使用相同查询来复制 Recordset 对象是等效的。如果此时将筛选应用于窗体,Recordset 对象将反映筛选的结果。

该属性仅在使用 Visual Basic 时才可用,并在所有视图中均为只读。

使用 RecordsetClone 属性可以独立于窗体本身对窗体上的记录进行导航或操作。例如,如果要使用一个不能用于窗体的方法(如 DAO Find 方法),则可以使用 RecordsetClone 属性。

当新的 Recordset 对象打开时,它的当前记录即为第一条记录。如果使用一种 Find 方法或一种 Move 方法,使 Recordset 对象中的其他记录成为当前记录时,必须通过将 DAO Bookmark 属性指定为该窗体的 Bookmark 属性,以使 Recordset 对象中的当前记录和窗体的当前记录同步。

可以使用 RecordCount 属性来计算 Recordset 对象中的记录数。下面的示例显示了如何组合 RecordCount 属性和 RecordsetClone 属性,以计算窗体中的记录数: