常用 Shape 命令

数据整理定义经整理的 Recordset 的列、由列表示的实体之间的关系,以及使用数据填充 Recordset 的方式。

经整理的 Recordset 可以由以下类型的列组成。

列类型 说明
数据 数据提供程序、表或以前整理的 Recordset的查询命令返回的 Recordset 中的字段。
章节 对另一个 Recordset 的引用,称为“章节”。 章节列支持定义父子关系,其中父级是包含章节列的 Recordset,子级是由章节表示的 Recordset。
aggregate 通过对子 Recordset 的所有行或所有行的一列执行聚合函数来派生列的值。 (请参阅以下聚合函数、CALC 函数和 NEW 关键字主题中的聚合函数。)
计算表达式 通过计算 Recordset 所在行中的列上的 Visual Basic for Application 表达式来派生列的值。 表达式是 CALC 函数的参数。 (请参阅聚合函数、CALC 函数和 NEW 关键字主题以及 Visual Basic for Applications 函数中的计算表达式。)
new 构建的空字段,以后可以使用数据进行填充。 列使用 NEW 关键字定义。 (请参阅聚合函数、CALC 函数和 NEW 关键字主题中的 NEW 关键字。)

shape 命令可以包含一个子句,该子句指定要返回 Recordset 对象的基础数据提供程序的查询命令。 查询的语法取决于基础数据提供程序的要求。 这通常是 SQL,尽管 ADO 不需要使用任何特定的查询语言。

Shape 命令可由 Recordset 对象发出,也可以通过设置 Command 对象的 CommandText 属性,然后调用 Execute 方法来发出。

可以使用 SQL JOIN 子句来关联两个表:但是,分层 Recordset 可以更有效地表示信息。 JOIN 创建的 Recordset 的每一行都以冗余方式重复其中一个表的信息。 对于每个多个子 Recordset 对象,分层 Recordset 只有一个父 Recordset。

可以嵌套 Shape 命令。 也就是说,父命令或子命令本身可能是另一个 shape 命令。

即使当用户指定 adUseServer 的游标位置时,shape 提供程序也会始终返回客户端游标。

可以通过编程方式或通过适当的视觉控件访问经整理的 Recordset 的 Recordset 组件。

Microsoft 提供了一个用于生成 shape 命令的可视化工具(请参阅 Visual Basic 6 文档中的数据环境设计器),以及另一个用于显示分层游标的可视化工具(请参阅 Visual Basic 6 文档中的“使用 Microsoft Hierarchical Flexgrid 控件”)。

有关导航分层记录集的信息,请参阅访问分层记录集中的行

有关语法正确的 shape 命令的精确信息,请参阅正式 Shape 语法

本部分包含以下主题。