Shape 命令概述

适用于:Access 2013、Office 2013

数据定形用于定义已构形 Recordset 的列、列所表示的实体之间的关系以及用数据填充 Recordset 的方式。

已构形的 Recordset 可能由以下类型的列组成。

列类型

说明

data

由查询命令返回给数据提供程序、表或以前定形的 RecordsetRecordset 中的字段。

对另一个称为章节Recordset 的引用。 章节列使您可以定义父子关系,其中是包含章节列的 Recordset,而是章节所表示的 Recordset

骨料

通过对所有行执行 聚合函数 或子 Recordset 的所有行的列来派生列的值。 (请参阅以下主题中的聚合函数: 聚合函数、CALC 函数和 NEW Keyword.)

计算表达式

列的值是通过对 Recordset 的同一行中的列计算 Visual Basic for Applications 表达式而产生的。 表达式是 CALC 函数的参数。 (请参阅以下主题中的“计算表达式”:聚合函数、CALC 函数和 NEW 关键字以及 Visual Basic for Applications 函数)。

新增功能

构造的空字段,可以随后用数据填充这些字段。 列用是用 NEW 关键字进行定义的。 (请参阅以下主题中的“NEW 关键字”:聚合函数、CALC 函数和 NEW 关键字)。

shape 命令可能包含子句,用于指定针对基础数据提供程序的、将返回 Recordset 对象的查询命令。 查询的语法取决于基础数据提供程序的要求。 通常,这是结构化查询语言 (SQL),尽管 ADO 不需要使用任何特定的查询语言。

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

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

Shape 命令可以嵌套。 就是说,parent-commandchild-command 本身可能是另一个 Shape 命令。

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

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

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

另请参阅