记录和提供程序提供的字段

打开 Record 对象时,其源可以是打开的 Recordset 的当前行、绝对 URL 或与打开的 Connection 对象结合使用的相对 URL。

如果 Record 是从 Recordset 打开的,则 Record 对象的 Fields 集合将包含 Recordset 中的所有字段,加上基础提供程序添加的任何字段。

提供程序可以插入其他字段,用于充当 Record 的补充特征。 因此,Record 可能会将 Recordset 中不存在的唯一字段作为一个整体包含在其集合中,也可能会具有从 Recordset 的另一行派生的任何 Record。

例如,从电子邮件数据源派生的 Recordset 的所有行可能具有 From、To 和 Subject 等列。 派生自该 Recordset 的 Record 将具有相同字段。 但是,Record 也可能具有该 Record 代表的特定邮件所特有的其他字段,例如 Attachment 和 Cc(抄送)。

虽然 Record 对象和 Recordset 的当前行具有相同的字段,但它们是不同的,因为 Record 和 Recordset 对象具有不同的方法和属性。

Record 和 Recordset 共有的字段可以在其中任一对象上进行修改。 但是,无法删除 Record 对象上的字段,尽管基础提供程序可能支持将该字段设置为 null。

打开 Record 后,可以采用编程方式添加字段。 还可以删除已添加的字段,但无法从原始 Recordset 中删除字段。

还可以直接从 URL 打开 Record 对象。 在这种情况下,有哪些字段会添加到 Record 取决于基础提供程序。 目前,大多数提供程序都添加了一组字段,用来描述 Record 所表示的实体。 如果实体由字节流(例如简单文件)组成,则通常可以从 Record 打开 Stream 对象。

文档源提供程序的特殊字段

称为“文档源提供程序”的一类特殊提供程序将管理文件夹和文档。 当 Record 对象表示文档时,或者当 Recordset 对象表示文档的文件夹时,文档源提供程序会用描述文档特征(而不是实际文档本身)的一组唯一字段填充这些对象。 通常,一个字段包含一个对表示该文档的 Stream 的引用。

这些字段构成资源记录或记录集,并已在附录 A:提供程序中针对支持它们的特定提供程序而列出。

两个常量为资源 Record 或 Recordset 的 Fields 集合编制索引,以检索一对常用的字段。 Field 对象的 Value 属性返回所需的内容。

  • 通过 adDefaultStream 常量访问的字段包含与 Record 或 Recordset 对象关联的默认流。 提供程序将默认流分配给一个对象。

  • 通过 adRecordURL 常量访问的字段包含用于标识该文档的绝对 URL。

文档源提供程序不支持 Record 和 Field 对象的 Properties 集合。 对于此类对象,Properties 集合的内容为 null。

文档源提供程序可以添加特定于提供程序的属性,如“数据源类型”,以标识它是否为文档源提供程序。 有关如何确定提供程序类型的详细信息,请参阅提供程序文档。

资源记录集列

资源记录集由以下列组成。

列名称 类型 说明
RESOURCE_PARSENAME AdVarWChar 只读。 指示资源的 URL。
RESOURCE_PARENTNAME AdVarWChar 只读。 指示父记录的绝对 URL。
RESOURCE_ABSOLUTEPARSENAME AdVarWChar 只读。 指示资源的绝对 URL,即 PARENTNAME 和 PARSENAME 的串联。
RESOURCE_ISHIDDEN AdBoolean 如果资源处于隐藏状态,则此属性为 True。 除非用于创建行集的命令显式选择 RESOURCE_ISHIDDEN 为 True 的行,否则不会返回任何行。
RESOURCE_ISREADONLY AdBoolean 如果资源是只读的,则此属性为 True。 请尝试使用 DBBINDFLAG_WRITE 打开此资源,如果尝试使用 DB_E_READONLY 打开此资源,则将失败。 即使已打开了该资源以仅供读取,也可以编辑此属性。
RESOURCE_CONTENTTYPE AdVarWChar 指示文档的可能用途,例如律师的案情摘要。 这可以对应于用于创建该文档的 Office 模板。
RESOURCE_CONTENTCLASS AdVarWChar 通过指示“text/html”等格式来指示文档的 MIME 类型。
RESOURCE_CONTENTLANGUAGE AdVarWChar 指示用于存储内容的语言。
RESOURCE_CREATIONTIME adFileTime 只读。 指示包含资源创建时间的 FILETIME 结构。 此时间是以协调世界时 (UTC) 格式报告的。
RESOURCE_LASTACCESSTIME AdFileTime 只读。 指示包含上次访问资源的时间的 FILETIME 结构。 该时间采用 UTC 格式。 如果提供程序不支持此时间成员,则 FILETIME 成员为零。
RESOURCE_LASTWRITETIME AdFileTime 只读。 指示包含上次写入资源的时间的 FILETIME 结构。 该时间采用 UTC 格式。 如果提供程序不支持此时间成员,则 FILETIME 成员为零。
RESOURCE_STREAMSIZE asUnsignedBigInt 只读。 指示资源的默认流的大小(以字节为单位)。
RESOURCE_ISCOLLECTION AdBoolean 只读。 如果资源是集合(例如目录),则此属性为 True。 如果资源是简单文件,则此属性为 False。
RESOURCE_ISSTRUCTUREDDOCUMENT AdBoolean 如果资源是结构化文档,则此属性为 True。 如果资源不是结构化文档,则此属性为 False。 它可能是集合或简单文件。
DEFAULT_DOCUMENT AdVarWChar 只读。 指示此资源包含一个 URL,该 URL 指向一个文件夹的默认简单文档或指向一个结构化文档。 从资源请求默认流时使用。 对于简单文件,此属性为空。
CHAPTERED_CHILDREN AdChapter 只读。 可选。 指示包含资源子级的行集的段。 (用于 Internet 发布的 OLE DB 提供程序不使用此列。)
RESOURCE_DISPLAYNAME AdVarWChar 只读。 指示资源的显示名称。
RESOURCE_ISROOT AdBoolean 只读。 如果资源是集合或结构化文档的根,则此属性为 True。

另请参阅

记录对象 (ADO)
附录 A:提供程序